2.52 PutBucketPolicy

Применяет политику S3 к бакету.
Наряду со стандартными заголовками, система поддерживает специфичные элементы, перечисленные ниже.
Подробную информацию об операции и примеры см. в документации AWS: PutBucketPolicy

Предыдущее название операции: PUT Bucket polic

Элементы запроса (Request Elements)

Тело запроса представляет собой политику бакета в формате JSON, содержащую одно или несколько утверждений(statement) политики. В блоке(ах) утверждений политики поддержка системой элементов утверждений политики и их значений выглядит следующим образом:
  • Sid -- также, как в AWS: Пользовательская строка, идентифицирующая утверждение, например, "Statement1" или "Only allow access from partner source IPs"
  • Effect -- также, как в AWS: "Allow" или "Deny"
  • Principal - должно быть одно из следующего:
    • "*" - утверждение применяется ко всем пользователям.
    • {"CanonicalUser": "<canonicalUserId>"} - утверждение применяется к указанному пользователю.
    • {"CanonicalUser": ["<canonicalUserId>", "<canonicalUserId>"]} -- утверждение применяется к указанным пользователям.
    Примечание.Канонический идентификатор пользователя в системе можно получить, воспользовавшись методом Admin API. GET /user.
  • Action - см.ниже.
  • Resource - также, как в AWS; должно быть одно из:
    • "arn:aws:s3:::" -- для действий с бакетами (таких, как "s3:ListBucket") и субресурсами бакетов (таких, как "s3:GetBucketAcl").
    • "arn:aws:s3:::/*" или "arn:aws:s3:::/" -- для действий с объектами(таких, как "s3:PutObject").
  • Condition - см.ниже.


Поддерживаемые действия (Action)

В рамках политик хранилища система поддерживает только следующие значения действий:
Примечание.Информацию о том, как использовать значения Action в политике бакета, см. в документации AWS Указание Разрешений в Политике.

Для объектов

  • s3:AbortMultipartUpload
  • s3:BypassGovernanceRetention
  • s3:DeleteObject
  • s3:DeleteObjectTagging
  • s3:DeleteObjectVersion
  • s3:DeleteObjectVersionTagging
  • s3:GetObject
  • s3:GetObjectAcl
  • s3:GetObjectLegalHold
  • s3:GetObjectRetention
  • s3:GetObjectTagging
  • s3:GetObjectTorrent
  • s3:GetObjectVersion
  • s3:GetObjectVersionAcl
  • s3:GetObjectVersionTagging
  • s3:ListMultipartUploadParts
  • s3:PutObject
  • s3:PutObjectAcl
  • s3:PutObjectLegalHold
  • s3:PutObjectRetention
  • s3:PutObjectTagging
  • s3:PutObjectVersionAcl
  • s3:PutObjectVersionTagging
  • s3:RestoreObject

Для бакетов

  • s3:CreateBucket
  • s3:DeleteBucket
  • s3:ListBucket
  • s3:ListBucketMultipartUploads
  • s3:ListBucketVersions

Для субресурсов бакетов

  • s3:DeleteBucketPolicy
  • s3:DeleteBucketWebsite
  • s3:GetBucketAcl
  • s3:GetBucketCORS
  • s3:GetBucketLocation
  • s3:GetBucketLogging
  • s3:GetBucketNotification
  • s3:GetBucketObjectLockConfiguration
  • s3:GetBucketPolicy
  • s3:GetBucketRequestPayment
  • s3:GetBucketTagging
  • s3:GetBucketVersioning
  • s3:GetBucketWebsite
  • s3:GetLifecycleConfiguration
  • s3:GetReplicationConfiguration
  • s3:PutBucketAcl
  • s3:PutBucketCORS
  • s3:PutBucketLogging
  • s3:PutBucketNotification
  • s3:PutBucketObjectLockConfiguration
  • s3:PutBucketPolicy
  • s3:PutBucketRequestPayment
  • s3:PutBucketTagging
  • s3:PutBucketVersioning
  • s3:PutBucketWebsite
  • s3:PutLifecycleConfiguration
  • s3:PutReplicationConfiguration
Примечание: Как и Amazon, система поддерживает использование звездочки (* вайлдкард) - подстановочного знака в конфигурации действия ("Action":["s3:*"]).
Когда звездочка используется вместе с элементом ресурса уровня объекта ("arn:aws:s3:::/*" или "arn:aws:s3:::/"), она обозначает все действия с объектами, которые поддерживает система.
Когда звездочка используется вместе с элементом ресурса уровня бакета ("arn:aws:s3:::"), она обозначает все действия с бакетами и их подресурсами, которые поддерживает система.

Поддерживаемые Условия ("Condition")

В описании политик система поддерживает только следующие операторы условий и ключи:
Примечание.Информацию об использовании операторов условий и ключей в политике бакета, см. в документации AWS Указание Разрешений в Политике.

Условия (Condition Operators)

  • IpAddress
  • NotIpAddress
  • NumericEquals
  • NumericNotEquals
  • NumericLessThan
  • NumericLessThanEquals
  • NumericGreaterThan
  • NumericGreaterThanEquals
  • StringEquals
  • StringNotEquals
  • StringEqualsIgnoreCase
  • StringNotEqualsIgnoreCase
  • StringLike
  • ForAllValues:StringLike
  • ForAnyValue:StringLike
  • StringNotLike

Значения условий (Condition Keys)

  • aws:Referer
  • aws:SourceIp
  • s3:delimiter
  • s3:ExistingObjectTag/<tag-key>
  • s3:LocationConstraint
  • s3:max-keys
  • s3:prefix
  • s3:RequestObjectTag/<tag-keys>
  • s3:RequestObjectTagKeys
  • s3:VersionId
  • s3:x-amz-acl
  • s3:x-amz-copy-source
  • s3:x-amz-grant-full-control
  • s3:x-amz-grant-read
  • s3:x-amz-grant-read-acp
  • s3:x-amz-grant-write
  • s3:x-amz-grant-write-acp
  • s3:x-amz-metadata-directive
  • s3:x-amz-server-side-encryption
  • s3:object-lock-mode
  • s3:object-lock-retain-until-date
  • s3:object-lock-legal-hold
  • s3:object-lock-remaining-retention-days

Примеры того, что можно делать с политиками BucketPolicy, см. в документации AWS.



см. также:
к S3 API


Рейтинг@Mail.ru Яндекс.Метрика