Para usar os recursos do Intelligent Media Management (IMM) como usuário RAM, conceda as permissões necessárias a esse usuário. Este tópico descreve as permissões obrigatórias para utilizar os recursos do IMM no Object Storage Service (OSS).
Visão geral das permissões
Ao acessar as funcionalidades do IMM por meio da operação x-oss-process ou x-oss-async-process do OSS, conceda as seguintes permissões:
Conceda ao usuário RAM permissões para executar operações no OSS.
Autorize o usuário RAM a usar os recursos de processamento de dados correspondentes do IMM.
Permita que o serviço IMM acesse o OSS e outros serviços relevantes.
Conceda ao serviço IMM as permissões necessárias em cenários de processamento de dados com processadores em lote ou gatilhos.
Conceder permissões de acesso ao OSS para o usuário RAM
Para usar os recursos de processamento de dados do IMM como usuário RAM com base na operação x-oss-process ou x-oss-async-process, conceda as permissões de acesso ao OSS necessárias. Para mais informações sobre como conceder permissões a um usuário RAM, consulte Conceder permissões a um usuário RAM. Use uma política do sistema ou uma política personalizada. A política do sistema AliyunOSSFullAccess concede acesso total ao OSS. Se optar por uma política personalizada, certifique-se de que ela contenha as permissões descritas na tabela a seguir.
|
Permissão |
Obrigatória |
Descrição |
|
oss:GetObject |
Sim |
Concede acesso de leitura aos objetos do OSS. |
|
oss:ProcessImm |
Sim |
Permite o uso dos recursos de processamento de dados do IMM no OSS. |
|
oss:PostProcessTask |
Não |
Habilita o acesso aos recursos de processamento de dados via método POST. Essa permissão é necessária, por exemplo, para usar |
|
oss:PutObject |
Não |
Autoriza o upload de dados para o OSS. Necessária para salve dados no OSS ( |
Conceder permissões de acesso ao IMM para o usuário RAM
Para usar os recursos de processamento de dados do IMM como usuário RAM por meio da operação x-oss-process ou x-oss-async-process, atribua as permissões de acesso ao IMM adequadas. Para detalhes sobre como configure permissões, consulte Gerencie permissões de usuário RAM.
A política do sistema AliyunIMMFullAccess oferece acesso completo ao IMM. Se precisar apenas de funcionalidades específicas, use uma política personalizada para conceder exclusivamente as permissões necessárias. A tabela abaixo detalha as permissões correspondentes às operações do IMM.
|
Operação |
Descrição |
Permissão |
|
image/cropping |
Recorta uma imagem automaticamente. |
imm:DetectImageCropping |
|
image/faces |
Detecta rostos em imagens. |
imm:DetectImageFaces |
|
video/convert |
Transcodifica um vídeo. |
imm:CreateMediaConvertTask |
|
video/animation |
Gera uma imagem animada a partir de um vídeo. |
imm:CreateMediaConvertTask |
|
video/sprite |
Cria um sprite a partir de um vídeo. |
imm:CreateMediaConvertTask |
|
video/snapshots |
Captura quadros de um vídeo. |
imm:CreateMediaConvertTask |
|
video/concat |
Mescla vídeos. |
imm:CreateMediaConvertTask |
|
video/info |
Extrai informações de vídeo. |
imm:DetectMediaMeta |
|
audio/convert |
Transcodifica um arquivo de áudio. |
imm:CreateMediaConvertTask |
|
audio/concat |
Mescla arquivos de áudio. |
imm:CreateMediaConvertTask |
|
audio/info |
Extrai informações de áudio. |
imm:DetectMediaMeta |
|
doc/convert |
Converte um documento para o formato especificado. |
imm:CreateOfficeConversionTask |
|
doc/edit |
Edita um documento. |
imm:GenerateWebofficeToken |
|
doc/preview |
Visualiza um documento. |
imm:GenerateWebofficeToken |
|
doc/snapshot |
Gera uma miniatura de documento. |
imm:CreateOfficeConversionTask |
|
pointcloud/compress |
Compacta um arquivo de nuvem de pontos. |
imm:CreateCompressPointCloudTask |
|
hls/m3u8 |
Gera uma lista de reprodução de vídeo. |
imm:GenerateVideoPlaylist |
|
hls/ts |
Cria uma tarefa de transcodificação ao vivo. |
imm:LiveTranscoding |
Para processar dados em um bucket do OSS usando recursos do IMM, vincule o bucket a um projeto do IMM. Ao criar um projeto do IMM, especifique uma função de serviço. Por padrão, aplica-se a função AliyunIMMDefaultRole. Se você usar um usuário RAM ou uma função RAM para acessar o serviço, a função de serviço especificada para o projeto deve ter permissão para executar a operação PassRole. O exemplo de instrução a seguir concede a permissão para executar a operação PassRole:
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
}
Conceder permissões de acesso a outros serviços de nuvem para o IMM
O IMM precisa acessar outros serviços relevantes para processar dados. Por exemplo, para processar dados armazenados no OSS, gravar dados de saída no OSS e enviar notificações para o Simple Message Queue (SMQ), autorize o IMM a acessar o OSS e o SMQ.
A função de serviço padrão permite que o IMM acesse os serviços relevantes. Para restringir as permissões, crie uma função de serviço com apenas as permissões necessárias e especifique essa função ao criar um projeto. Para mais informações, consulte Configure uma função de serviço para um projeto.
Conceder permissões necessárias para cenários de processador em lote ou gatilho
Para usar processadores em lote e gatilhos, autorize o IMM a acessar outros serviços de nuvem, como o OSS. Se nenhuma função de serviço estiver disponível, crie a função de serviço padrão na página Cloud Resource Access Authorization.
Exemplos
Conceder permissões de acesso total
O exemplo de política RAM a seguir permite que um usuário acesse todos os recursos de processamento de dados do IMM a partir do OSS:
{
"Statement":[
{
"Effect":"Allow",
"Action":"oss:*",
"Resource":"*"
},
{
"Effect":"Allow",
"Action":"imm:*",
"Resource":"*"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
}
],
"Version":"1"
}
Conceder permissões para operações específicas
Este exemplo de política RAM autoriza um usuário a acessar recursos de processamento de documentos em um bucket específico do OSS:
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:GetObject",
"oss:PutObject",
"oss:PostProcessTask",
"oss:ProcessImm"
],
"Resource": [
"acs:oss:*:*:bucketname1/*",
"acs:oss:*:*:bucketname2/*"
]
},
{
"Action": [
"imm:CreateOfficeConversionTask",
"imm:GetWebofficeURL"
],
"Resource": "*",
"Effect": "Allow"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
}
],
"Version": "1"
}
Conceder as permissões necessárias em um cenário de processador em lote ou gatilho
A política RAM de exemplo abaixo permite que o IMM execute as ações especificadas no OSS:
{
"Statement":[
{
"Action":[
"oss:Get*",
"oss:List*",
"oss:Process*",
"oss:PostProcess*",
"oss:Put*",
"oss:PutBucketInventory",
"oss:GetBucketInventory",
"oss:ListBucketInventory",
"oss:DeleteBucketInventory",
"oss:PutBucketNotification",
"oss:DeleteBucketNotification",
"oss:StartEventRecord",
"oss:StopEventRecord",
"oss:GetEventRecordStatus"
],
"Resource":"*",
"Effect":"Allow"
}
],
"Version":"1"
}