バケットポリシーを使用すると、Alibaba Cloudアカウント、RAMユーザー、RAMロールなどの匿名ユーザーまたは識別されたユーザーの特定のOSS (Object Storage Service) リソースへのアクセスを許可または拒否できます。 たとえば、特定のOSSリソースに対する読み取り専用権限を別のAlibaba CloudアカウントのRAMユーザーに付与できます。
ノート
バケットポリシーを設定する前に、この機能に精通していることを確認してください。 詳細については、「バケットポリシー」をご参照ください。
このトピックのサンプルコードでは、中国 (杭州) リージョンのリージョンID
cn-hangzhou
を使用しています。 デフォルトでは、パブリックエンドポイントはバケット内のリソースにアクセスするために使用されます。 バケットが配置されているリージョン内の他のAlibaba Cloudサービスを使用してバケット内のリソースにアクセスする場合は、内部エンドポイントを使用します。 Object Storage Service (OSS) でサポートされているリージョンとエンドポイントの詳細については、「OSSリージョンとエンドポイント」をご参照ください。このトピックでは、アクセス資格情報は環境変数から取得します。 アクセス資格情報の設定方法の詳細については、「アクセス資格情報の設定」をご参照ください。
バケットポリシーを設定するには、
oss:PutBucketPolicy
権限が必要です。 バケットポリシーを照会するには、oss:GetBucketPolicy
権限が必要です。 バケットポリシーを削除するには、oss:DeleteBucketPolicy
権限が必要です。 詳細については、「RAMユーザーのカスタムポリシーの権限付与」をご参照ください。
サンプルコード
参考情報
バケットポリシーの設定に使用される完全なサンプルコードについては、GitHubの例をご覧ください。
バケットポリシーを設定するために呼び出すことができるAPI操作の詳細については、「PutBucketPolicy」をご参照ください。
バケットポリシーのクエリに使用される完全なサンプルコードについては、GitHubの例をご覧ください。
バケットポリシーを照会するために呼び出すことができるAPI操作の詳細については、「GetBucketPolicy」をご参照ください。
バケットポリシーの削除に使用される完全なサンプルコードについては、GitHubの例をご覧ください。
バケットポリシーを削除するために呼び出すことができるAPI操作の詳細については、「DeleteBucketPolicy」をご参照ください。