O Object Storage Service (OSS) permite classificar objetos por meio de tags. Com isso, você pode gerenciar objetos que possuem a mesma tag — por exemplo, definir o período de validade ou converter a classe de armazenamento desses objetos. Execute o comando object-tagging para adicionar, modifique, consultar ou exclua tags de objetos.
Notas de uso
Para adicionar ou modifique uma tag de objeto, você precisa da permissão
oss:PutObjectTagging. Para consultar tags de objetos, é necessária a permissãooss:GetObjectTagging. Para exclua uma tag de objeto, a permissãooss:DeleteObjectTaggingé obrigatória. Para mais informações, consulte Grant a custom policy.
A partir do ossutil 1.6.16, você pode usar diretamente ossutil como nome do binário na linha de comando, sem necessidade de atualize o nome conforme o sistema operacional. Para versões anteriores à 1.6.16, é necessário atualize o nome do binário de acordo com o sistema operacional. Para mais informações, consulte ossutil command reference.
Para mais informações sobre tags de objetos, consulte Tag objects.
Sintaxe do comando
ossutil object-tagging oss://bucketname[/prefix][key#value]
--method <value>
[--encoding-type <value>]
[-r, --recursive]
[--payer <value>]
[--version-id <value>]
A tabela a seguir descreve os parâmetros e as opções da sintaxe.
|
Parâmetro/Opção |
Descrição |
|
bucketname |
O nome do bucket. |
|
prefix |
O prefixo nos nomes dos recursos, como diretórios e objetos. |
|
key |
A chave da tag. Uma tag é um par chave-valor. Cada objeto aceita até 10 tags, e as tags de um mesmo objeto devem ter chaves exclusivas. A chave de uma tag deve atender aos seguintes requisitos:
|
|
value |
O valor da tag. O valor de uma tag deve atender aos seguintes requisitos:
|
|
--method |
O tipo da requisição. Valores válidos:
|
|
--encoding-type |
O método de codificação do prefixo que segue |
|
-r, --recursive |
Com essa opção, o ossutil configure as tags para todos os objetos cujos nomes contêm o prefixo indicado pelo parâmetro prefix. Sem essa opção, o ossutil configure as tags apenas para o objeto especificado. |
|
--version-id |
O ID de versão do objeto. Esse parâmetro se aplica somente a buckets com versionamento habilitado ou suspenso. |
|
--payer |
O pagador da requisição. Para que o solicitante que acessa os recursos no caminho especificado arque com os custos gerados pela operação, como taxas de tráfego e de requisição, defina esse parâmetro como requester. |
Adicionar ou modifique tags de objetos
Somente o proprietário de um bucket e usuários RAM com a permissão PutObjectTagging podem adicionar tags a objetos no bucket ou modifique as tags desses objetos.
Os exemplos a seguir mostram como adicionar e modifique tags de um objeto:
Se o objeto especificado não possuir uma tag com a mesma chave indicada no comando, a tag será adicionada ao objeto. Se o objeto já tiver uma tag com a mesma chave, a tag existente será sobrescrita.
-
Execute o comando a seguir para configure uma tag com chave tagkey e valor tagvalue no objeto exampleobject.txt do bucket examplebucket:
ossutil object-tagging --method put oss://examplebucket/exampleobject.txt tagkey#tagvalue -
Para configure as tags tagkey1#tagvalue1 e tagkey2#tagvalue2 no objeto exampleobject.png do bucket examplebucket, execute o seguinte comando:
ossutil object-tagging --method put oss://examplebucket/exampleobject.txt tagkey1#tagvalue1 tagkey2#tagvalue2 -
O comando abaixo configure as tags tagkey3#tagvalue3, tagkey4#tagvalue4 e tagkey5#tagvalue5 para todos os objetos cujos nomes contêm o prefixo "test" no bucket examplebucket:
ossutil object-tagging --method put oss://examplebucket/test -r tagkey3#tagvalue3 tagkey4#tagvalue4 tagkey5#tagvalue5 -
Use o comando a seguir para configure uma tag com chave tagkey6 e valor tagvalue6 na versão especificada do objeto exampleobject.txt no bucket examplebucket:
ossutil object-tagging --method put oss://examplebucket/exampleobject.txt tagkey6#tagvalue6 --version-id CAEQARiBgID8rumR2hYiIGUyOTAyZGY2MzU5MjQ5ZjlhYzQzZjNlYTAyZDE3****Para mais informações sobre como listar todas as versões de um objeto, consulte ls (List buckets, objects, or parts).
-
Após a execução bem-sucedida dos comandos de exemplo acima, o sistema retorna uma saída semelhante à seguinte, indicando o tempo gasto para configure as tags:
0.106852(s) elapsed
Consultar tags de objetos
Somente o proprietário de um bucket e usuários RAM com a permissão GetObjectTagging podem consultar as tags dos objetos no bucket.
Os exemplos a seguir mostram como consultar tags de objetos:
-
Consultar as tags de um objeto
Execute o comando a seguir para consultar as tags do objeto exampleobject.txt no bucket examplebucket:
ossutil object-tagging --method get oss://examplebucket/exampleobject.txtA saída a seguir mostra que exampleobject.txt possui uma tag com chave tagkey e valor tagvalue.
object index tag index tag key tag value object --------------------------------------------------------------------------- 1 0 "tagkey" "tagvalue" oss://examplebucket/exampleobject.txt 0.068156(s) elapsed -
Consultar as tags de múltiplos objetos
O comando abaixo consulta as tags de todos os objetos cujos nomes contêm o prefixo "test" no bucket examplebucket:
ossutil object-tagging --method get oss://examplebucket/test -rA saída a seguir mostra que os objetos cujos nomes contêm o prefixo "test" possuem as seguintes tags: tagkey3#tagvalue3, tagkey4#tagvalue4 e tagkey5#tagvalue5.
object index tag index tag key tag value object --------------------------------------------------------------------------- 1 0 "tagkey3" "tagvalue3" oss://examplebucket/test 1 1 "tagkey4" "tagvalue4" oss://examplebucket/test 1 2 "tagkey5" "tagvalue5" oss://examplebucket/test 0.093040(s) elapsed
Exclua tags de objetos
Somente o proprietário de um bucket e usuários RAM com a permissão DeleteObjectTagging podem exclua as tags dos objetos no bucket.
Os exemplos a seguir mostram como exclua tags de objetos:
-
Exclua as tags de um objeto
Execute o comando a seguir para exclua as tags do objeto exampleobject.txt no bucket examplebucket:
ossutil object-tagging --method delete oss://examplebucket/exampleobject.txt -
Exclua as tags de múltiplos objetos
O comando abaixo exclui as tags de todos os objetos cujos nomes contêm o prefixo "test" no bucket examplebucket:
ossutil object-tagging --method delete oss://examplebucket/test -r -
Após a execução bem-sucedida dos comandos acima, o sistema retorna uma saída semelhante à seguinte, indicando o tempo gasto para exclua as tags:
0.148970(s) elapsed
Opções comuns
Para acessar um bucket em outra região, use -e para especifique o endpoint. Para acessar um bucket pertencente a outra conta Alibaba Cloud, use -i para o AccessKey ID e -k para o AccessKey secret.
Por exemplo, execute o comando a seguir para configure uma tag com chave tagkey7 e valor tagvalue7 no objeto example.png do bucket testbucket, localizado na região China (Shanghai) e pertencente a outra conta Alibaba Cloud:
ossutil object-tagging --method put oss://testbucket/exampletest.png tagkey7#tagvalue7 -e oss-cn-shanghai.aliyuncs.com -i yourAccessKeyID -k yourAccessKeySecret