This repository has been archived on 2026-05-24. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
all-in-kingsoft/FinalHomework/hzh_doc/log/阿里云 OSS.md
T

2.8 KiB
Raw Blame History

tags, create time
tags create time
全栈开发
大作业
OSS
阿里云
2026-05-10

阿里云 OSS 配置记录

平台注册

  • 平台: 阿里云 OSS(对象存储服务)
  • Bucket 名称: hr-recruitment-hzh
  • 区域 / Endpoint: cn-beijing / oss-cn-beijing.aliyuncs.com
  • 读写权限: 私有(已关闭匿名访问和公开读)

访问密钥(AccessKey)

[!danger] 安全提醒

  • AccessKey Secret 是敏感凭据,绝不提交到 Git
  • 如果曾在聊天窗口或日志中泄露过,请立刻去 RAM 控制台 Reset
  • 已创建自定义最小权限策略,仅授权以下 4 个 Action(见下方)
字段 值
AccessKey ID LTAI5t82VBCQSEyopZrR2S6w
AccessKey Secret baHMcsfsp7jiURqqdGV3xePta5wGFu

自定义最小权限策略

RAM 控制台 → 权限管理 → 创建自定义策略,只授予以下 4 个 API Action:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "oss:PutObject",
        "oss:GetObject",
        "oss:DeleteObject",
        "oss:ListObjects"
      ],
      "Resource": [
        "acs:oss:*:*:hr-recruitment-hzh/*"
      ]
    }
  ]
}
  • oss:PutObject — 前端直传简历文件
  • oss:GetObject — 下载/预览文件
  • oss:DeleteObject — 清理过期文件
  • oss:ListObjects — 列出目录内容(可选)
  • Resource 精确限定在 hr-recruitment-hzh Bucket,不触及任何其他资源。
字段 值
AccessKey ID LTAI5t82VBCQSEyopZrR2S6w
AccessKey Secret baHMcsfsp7jiURqqdGV3xePta5wGFu

项目中的使用位置

根据架构设计,OSS key 仅存在于 Logic gRPC 服务 中,Web 网关层不接触密钥:

logic-grpc-service/.env                  ← 实际密钥(不进 Git)
logic-grpc-service/.env.example          ← 模板文件(进 Git)
logic-grpc-service/internal/oss/client.go   ← SDK 初始化读取 .env
logic-grpc-service/internal/oss/signer.go  ← 生成签名 URL

.env.example 模板内容

# logic-grpc-service/.env.example
OSS_ACCESS_KEY_ID=your-access-key-id
OSS_ACCESS_KEY_SECRET=your-access-key-secret
OSS_ENDPOINT=oss-cn-hangzhou.aliyuncs.com
OSS_BUCKET_NAME=your-bucket-name

对应 .gitignore 配置

# logic-grpc-service/.gitignore
.env

使用流程回顾

  1. 后端通过 AccessKey 初始化 OSS Client
  2. 前端请求上传简历时,Logic 服务调用 GenOssSign → 生成临时签名 URL(通常 30min 过期)
  3. 前端拿着签名 URL 直接向 OSS PUT 文件,服务端不缓存任何字节
  4. 上传完成后前端传 fileKey → Logic 将 fileKey 写入 MySQL 简历表