aliyun / alibabacloud-python-sdk

78 stars 28 forks source link

alibabacloud_oss20190517 这个模块更新oss policy 时候返回json解析失败问题 #30

Closed tanzhiliangit closed 3 months ago

tanzhiliangit commented 3 months ago

这边使用alibabacloud_oss20190517 这个模块去给oss policy 做更新操作的时候出现报错:RuntimeError: Failed to parse the value as json format, Value: "".

请问 oss_20190517_models.PutBucketPolicyRequest 这个方法应该给什么参数才能正常完成oss policy更新请求,测试代码请参考下面

import os
import sys
from typing import List
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_tea_util import models as util_models
from aliyun_credentials import AliyunCredentials
from alibabacloud_oss20190517.client import Client as OssManagementClient
from alibabacloud_oss20190517 import models as oss_20190517_models
import json

region = "cn-shanghai"
subscription = "sandbox"
access_key_id, access_key_secret, security_token = AliyunCredentials.default_credentials(region, subscription )

# rds_endpoint = "rds.aliyuncs.com"
runtime = util_models.RuntimeOptions()

config = open_api_models.Config(
    # 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。,
    access_key_id=access_key_id,
    # 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
    access_key_secret=access_key_secret,
    security_token=security_token
)

config.endpoint = f'oss-cn-shanghai.aliyuncs.com'

oss_client = OssManagementClient(config)

policy_json={'Version': '1', 'Statement': [{'Effect': 'Allow', 'Action': ['oss:GetObject'], 'Principal': ['xxxxxx'], 'Resource': ['acs:oss:*:xxxxxxx:xxxxxxxx'], 'Condition': {'IpAddress': {'acs:SourceIp': ['1.1.1.1','2.2.2.2']}}}]}

put_bucket_policy_request = oss_20190517_models.PutBucketPolicyRequest(policy=json.dumps(policy_json))
updateres = oss_client.put_bucket_policy(bucket="xxxxbucket",request=put_bucket_policy_request)
print(updateres)
TsinghuaDream commented 3 months ago

当前这个仓库的OSS SDK是用不了的,还在内部优化。请使用OSS自研的SDKhttps://help.aliyun.com/zh/oss/developer-reference/installation-14?spm=a2c4g.11186623.0.0.51ad73685M5TTz

更新policy的话,可以看下文档https://help.aliyun.com/zh/oss/developer-reference/bucket-policies-3?spm=a2c4g.11186623.0.0.6d5fe93d4cy3hw

后续有疑问,可直接加钉钉群“OpenAPI 开发者门户 - 值班服务群4群”群的钉钉群号: 60965016010,这个issue就先关了哈。