Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-14 GMT+08:00

Configuração de uma política de bucket

Funções

Esta operação cria ou modifica políticas para buckets. Se o bucket especificado já tiver uma política, a política na solicitação substituirá a existente. Não há limite para o número de políticas de bucket (declarações) para um bucket. No entanto, o tamanho total das descrições JSON de todas as políticas de bucket em um bucket não pode exceder 20 KB.

Para executar essa operação, o usuário deve ser o proprietário do bucket ou o usuário do IAM do proprietário do bucket que tem as permissões necessárias para configurar as políticas do bucket.

Para obter detalhes sobre como usar políticas de bucket para gerenciar permissões, consulte o controle de permissão no Guia de configuração de permissões do OBS.

Sintaxe da solicitação

1
2
3
4
5
PUT /?policy HTTP/1.1   
Host: bucketname.obs.region.myhuaweicloud.com 
Date: date
Authorization: signatureValue
Policy written in JSON

Parâmetros de solicitação

Esta solicitação não contém nenhum parâmetro.

Cabeçalhos de solicitação

Essa solicitação usa cabeçalhos comuns. Para mais detalhes, consulte Tabela 3.

Elementos de solicitação

O corpo da solicitação é uma string JSON que contém informações de política de bucket.

Sintaxe da resposta

1
2
3
HTTP/1.1 status_code
Date: date
Content-Length: length

Cabeçalhos de resposta

A resposta à solicitação usa cabeçalhos comuns. Para mais detalhes, consulte Tabela 1.

Elementos de resposta

Esta resposta não envolve elementos.

Respostas de erro

Nenhuma resposta de erro especial é retornada. Para mais detalhes, consulte Tabela 2.

Solicitação de exemplo 1

Conceda permissões a um inquilino do OBS.

Conceda permissões ao locatário cuja ID é 783fc6652cf246c096ea836694f71855.

Para obter detalhes sobre como obter a ID de locatário, consulte Obtenção do ID da conta e do ID de usuário.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
PUT /?policy HTTP/1.1
Host: examplebucket.obs.region.myhuaweicloud.com
Date: WED, 01 Jul 2015 02:32:25 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=

{
    "Statement": [
        {
            "Sid": "Stmt1375240018061",
            "Action": [
                "GetBucketLogging"
            ],
            "Effect": "Allow",
            "Resource": "logging.bucket",
            "Principal": {
                "ID": [
                    "domain/783fc6652cf246c096ea836694f71855:user/*"
                ]
            }
        }
    ]
}

Resposta de exemplo 1

1
2
3
4
5
6
HTTP/1.1 204 No Content
x-obs-request-id: 7B6DFC9BC71DD58B061285551605709
x-obs-id-2: N0I2REZDOUJDNzFERDU4QjA2MTI4NTU1MTYwNTcwOUFBQUFBQUFBYmJiYmJiYmJD
Date: WED, 01 Jul 2015 02:32:25 GMT
Content-Length: 0
Server: OBS

Solicitação de exemplo 2

Conceda permissões a um usuário do OBS.

O ID do usuário é 71f3901173514e6988115ea2c26d1999 e o ID da conta é 783fc6652cf246c096ea836694f71855.

Para obter detalhes sobre como obter o ID da conta e o ID do usuário, consulte Obtenção do ID da conta e do ID de usuário.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
PUT /?policy HTTP/1.1
Host: examplebucket.obs.region.myhuaweicloud.com
Date: WED, 01 Jul 2015 02:33:28 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=

{
    "Statement": [
        {
            "Sid": "Stmt1375240018062",
            "Action": [
                "PutBucketLogging"
            ],
            "Effect": "Allow",
            "Resource": "examplebucket",
            "Principal": {
                "ID": [
                    "domain/783fc6652cf246c096ea836694f71855:user/71f3901173514e6988115ea2c26d1999"
                ]
            }
        }
    ]
}

Resposta de exemplo 2

1
2
3
4
5
6
HTTP/1.1 204 No Content
x-obs-request-id: 7B6DFC9BC71DD58B061285551605709
x-obs-id-2: N0I2REZDOUJDNzFERDU4QjA2MTI4NTU1MTYwNTcwOUFBQUFBQUFBYmJiYmJiYmJD
Date: WED, 01 Jul 2015 02:33:28 GMT
Content-Length: 0
Server: OBS

Solicitação de exemplo 3

Negar todas as permissões de operação a todos os usuários, exceto o especificado.

O ID do usuário é 71f3901173514e6988115ea2c26d1999 e o ID da conta é 783fc6652cf246c096ea836694f71855.

Para obter detalhes sobre como obter o ID da conta e o ID do usuário, consulte Obtenção do ID da conta e do ID de usuário.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
PUT /?policy HTTP/1.1 
Host: examplebucket.obs.region.myhuaweicloud.com
Date: WED, 01 Jul 2015 02:34:34 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=
 
{
    "Statement": [
        {
            "Effect": "Deny", 
            "Action": ["*"], 
            "Resource": [
                "examplebucket/*", 
                "examplebucket"
            ], 
            "NotPrincipal": {
                "ID": [
                    "domain/783fc6652cf246c096ea836694f71855:user/71f3901173514e6988115ea2c26d1999", 
                    "domain/783fc6652cf246c096ea836694f71855"
                ]
            }
        }
     ]
}

Resposta de exemplo 3

1
2
3
4
5
6
HTTP/1.1 204 No Content 
x-obs-request-id: A603000001604A7DFE4A4AF31E301891
x-obs-id-2: BKOvGmTlt6sda5X4G89PuMO4fabObGYmnpRGkaMba1LqPt0fCACEuCMllAObRK1n
Date: WED, 01 Jul 2015 02:34:34 GMT
Content-Length: 0
Server: OBS

Solicitação de exemplo 4

Pedido para permitir apenas o nome de domínio especificado e solicitações de link externo que não têm cabeçalhos de referência usando a lista branca de validação de URL.

Lista branca de validação de URL: http://console.huaweicloud.com

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
PUT /?policy HTTP/1.1 
Host: examplebucket.obs.region.myhuaweicloud.com
Date: WED, 01 Jul 2015 02:34:34 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:jZiAT8Vx4azWEvPRMWi0X5BpJMA=
 
{
	"Statement": [{
		"Effect": "Deny",
		"Action": [
		"GetObject",
		"GetObjectVersion"
		],
		"Principal": {
			"ID": ["*"]
		},
		"Resource": ["examplebucket/*"],
		"Condition": {
			"StringNotLike": {
				"Referer": [
				"http://console.huaweicloud.com*",
				"${null}"
				]
			}
		}
	}]
}

Resposta de exemplo 4

1
2
3
4
5
6
HTTP/1.1 204 No Content 
x-obs-request-id: A603000001604A7DFE4A4AF31E301891
x-obs-id-2: BKOvGmTlt6sda5X4G89PuMO4fabObGYmnpRGkaMba1LqPt0fCACEuCMllAObRK1n
Date: WED, 01 Jul 2015 02:34:34 GMT
Content-Length: 0
Server: OBS