parent
cecc04859e
commit
07e69b31aa
Binary file not shown.
@ -0,0 +1,17 @@
|
||||
from WxMini.Utils.OssUtil import get_sts_token, upload_to_oss
|
||||
|
||||
# 测试调用
|
||||
if __name__ == "__main__":
|
||||
# 获取 STS 临时凭证
|
||||
sts_token = get_sts_token()
|
||||
# print(f"AccessKeyId: {sts_token['AccessKeyId']}")
|
||||
# print(f"AccessKeySecret: {sts_token['AccessKeySecret']}")
|
||||
# print(f"SecurityToken: {sts_token['SecurityToken']}")
|
||||
|
||||
# 上传文件到 OSS
|
||||
result = upload_to_oss(
|
||||
sts_token['AccessKeyId'],
|
||||
sts_token['AccessKeySecret'],
|
||||
sts_token['SecurityToken']
|
||||
)
|
||||
print(result)
|
@ -1,52 +0,0 @@
|
||||
import json
|
||||
from alibabacloud_sts20150401 import models as sts_20150401_models
|
||||
from alibabacloud_sts20150401.client import Client as Sts20150401Client
|
||||
from alibabacloud_tea_openapi.models import Config
|
||||
|
||||
# https://help.aliyun.com/zh/oss/use-cases/add-signatures-on-the-client-by-using-javascript-and-upload-data-to-oss?spm=a2c4g.11186623.help-menu-31815.d_6_1_0_1.2dd15d03SrLg4Q#4f036801celh7
|
||||
# 配置阿里云 AccessKey 和 RAM 角色 ARN
|
||||
access_key_id = "LTAI5tJrhwuBzF2X9USrzubX"
|
||||
access_key_secret = "I6ezLuYhk9z9MRjXD2q99STSpTONwW"
|
||||
role_arn_for_oss_upload = "acs:ram::1546399445482588:role/huanghai-create-role" # RAM 角色 ARN
|
||||
|
||||
# 替换为实际的 bucket 名称和 region-id
|
||||
BUCKET_NAME = 'hzkc'
|
||||
REGION_ID = 'cn-beijing'
|
||||
ENDPOINT = 'https://oss-cn-beijing.aliyuncs.com'
|
||||
OSS_PREFIX = "https://hzkc.oss-cn-beijing.aliyuncs.com/"
|
||||
|
||||
host = OSS_PREFIX
|
||||
expire_time = 3600 # 指定过期时间,单位为秒
|
||||
upload_dir = 'dir' # 指定上传到 OSS 的文件前缀
|
||||
role_session_name = 'role_session_name' # 自定义会话名称
|
||||
|
||||
# 直接使用 access_key_id 和 access_key_secret 初始化 Config
|
||||
config = Config(
|
||||
region_id=REGION_ID,
|
||||
access_key_id=access_key_id,
|
||||
access_key_secret=access_key_secret
|
||||
)
|
||||
|
||||
# 创建 STS 客户端并获取临时凭证
|
||||
sts_client = Sts20150401Client(config=config)
|
||||
assume_role_request = sts_20150401_models.AssumeRoleRequest(
|
||||
role_arn=role_arn_for_oss_upload,
|
||||
role_session_name=role_session_name
|
||||
)
|
||||
response = sts_client.assume_role(assume_role_request)
|
||||
token = json.dumps(response.body.credentials.to_map())
|
||||
|
||||
# 将 JSON 字符串解析为 Python 字典
|
||||
token_dict = json.loads(token)
|
||||
|
||||
# 提取字段
|
||||
access_key_id = token_dict['AccessKeyId']
|
||||
access_key_secret = token_dict['AccessKeySecret']
|
||||
expiration = token_dict['Expiration']
|
||||
security_token = token_dict['SecurityToken']
|
||||
|
||||
# 打印提取的字段
|
||||
print(f"AccessKeyId: {access_key_id}")
|
||||
print(f"AccessKeySecret: {access_key_secret}")
|
||||
print(f"Expiration: {expiration}")
|
||||
print(f"SecurityToken: {security_token}")
|
Binary file not shown.
Loading…
Reference in new issue