O comando put-bucket-policy é utilizado para configure políticas de bucket, concedendo permissões à conta Alibaba Cloud atual ou a outras contas Alibaba Cloud — incluindo usuários RAM e funções RAM, individuais ou múltiplos — para acessar recursos armazenados no bucket.
Note
Para configure políticas de bucket, é necessária a permissão oss:PutBucketPolicy. Para mais informações, consulte Grant a custom policy.
Syntax
ossutil api put-bucket-policy --bucket value --body value [flags]
|
Parameter |
Type |
Description |
|
--bucket |
string |
O nome do bucket para o qual você deseja configure políticas de controle de acesso. |
|
--body |
string |
O corpo da requisição no formato JSON, que define as permissões de acesso. |
O comando put-bucket-policy corresponde à operação PutBucketPolicy. Para mais informações sobre os parâmetros disponíveis, consulte PutBucketPolicy.
Uma política de bucket inclui os campos Version e Statement. Veja um exemplo abaixo:
{
"Version": "1",
"Statement": [
{
"Action": ["oss:PutObject", "oss:GetObject"],
"Effect": "Deny",
"Principal": ["1234567890"],
"Resource": ["acs:oss:*:1234567890:*/*"]
}
]
}
Version: A versão da política. Valor padrão: 1.-
Statement: Uma política contém um ou mais arrays de declarações, cada um definindo um conjunto de permissões.Action: Especifica a lista de operações permitidas ou negadas, comooss:PutObjecteoss:GetObject.Effect: Indica se a declaração permite ou nega o acesso. Valores possíveis:AllowouDeny.Principal: Especifica a entidade à qual a política se aplica — neste caso, o UID do usuário especificado.Resource: Define o escopo dos recursos aos quais a política se aplica.
Para mais detalhes sobre os campos
VersioneStatement, consulte Common examples of bucket policies.Para conhecer as opções globais de linha de comando suportadas, consulte Supported global command line options.
Example
A seguir, um exemplo de código para configure uma política de controle de acesso no bucket examplebucket, especificando que as permissões necessárias para as operações PutObject e GetObject não sejam concedidas a um usuário específico.
ossutil api put-bucket-policy --bucket examplebucket --body "{\"Version\":\"1\",\"Statement\":[{\"Action\":[\"oss:PutObject\",\"oss:GetObject\"],\"Effect\":\"Deny\",\"Principal\":[\"1234567890\"],\"Resource\":[\"acs:oss:*:1234567890:*/*\"]}]}"