Para usar las funciones de Intelligent Media Management (IMM) como usuario de RAM, debe otorgarle los permisos obligatorios. En este tema se describen los permisos necesarios para utilizar las funciones de IMM en Object Storage Service (OSS).
Descripción general de permisos
Cuando accede a las capacidades de IMM mediante la operación x-oss-process o x-oss-async-process de OSS, debe otorgar los permisos obligatorios:
Otorgue al usuario de RAM los permisos para ejecutar operaciones en OSS.
Conceda al usuario de RAM los permisos para usar las funciones de procesamiento de datos correspondientes de IMM.
Autorice al servicio de IMM a acceder a OSS y a otros servicios relacionados.
Asigne al servicio de IMM los permisos necesarios en escenarios de procesamiento de datos basados en procesadores por lotes o activadores.
Otorgar permisos de acceso a OSS al usuario de RAM
Si utiliza las capacidades de procesamiento de datos de IMM como usuario de RAM con la operación x-oss-process o x-oss-async-process, debe concederle los permisos de acceso a OSS correspondientes. Para obtener más información sobre cómo otorgar permisos a un usuario de RAM, consulte Otorgar permisos a un usuario de RAM. Los permisos se pueden asignar mediante una política del sistema o una política personalizada. La política del sistema AliyunOSSFullAccess concede acceso total a OSS. Si usa una política personalizada para otorgar permisos específicos, compruebe que contenga los permisos descritos en a continuación tabla.
|
Permiso |
Obligatorio |
Descripción |
|
oss:GetObject |
Sí |
Concede acceso de lectura a los objetos de OSS. |
|
oss:ProcessImm |
Sí |
Permite usar las capacidades de procesamiento de datos de IMM en OSS. |
|
oss:PostProcessTask |
No |
Otorga acceso a las capacidades de procesamiento de datos mediante el método POST. Por ejemplo, este permiso es obligatorio para procesar datos con |
|
oss:PutObject |
No |
Permite cargar datos en OSS. Este permiso es obligatorio para guardar datos en OSS ( |
Otorgar permisos de acceso a IMM al usuario de RAM
Si utiliza las capacidades de procesamiento de datos de IMM como usuario de RAM con la operación x-oss-process o x-oss-async-process, debe concederle los permisos de acceso a IMM correspondientes. Para obtener más información sobre cómo configurar permisos, consulte Manage RAM user permissions.
La política del sistema AliyunIMMFullAccess concede acceso total a IMM. Si solo requiere capacidades específicas, utilice una política personalizada para otorgar únicamente los permisos obligatorios. A continuación se describen los permisos correspondientes a las operaciones de IMM.
|
Operación |
Descripción |
Permiso |
|
image/cropping |
Recorta automáticamente una imagen. |
imm:DetectImageCropping |
|
image/faces |
Detecta rostros en imágenes. |
imm:DetectImageFaces |
|
video/convert |
Transcodifica un video. |
imm:CreateMediaConvertTask |
|
video/animation |
Crea una imagen animada a partir de un video. |
imm:CreateMediaConvertTask |
|
video/sprite |
Genera un sprite a partir de un video. |
imm:CreateMediaConvertTask |
|
video/snapshots |
Captura fotogramas de un video. |
imm:CreateMediaConvertTask |
|
video/concat |
Combina videos. |
imm:CreateMediaConvertTask |
|
video/info |
Extrae información de video. |
imm:DetectMediaMeta |
|
audio/convert |
Transcodifica un archivo de audio. |
imm:CreateMediaConvertTask |
|
audio/concat |
Combina archivos de audio. |
imm:CreateMediaConvertTask |
|
audio/info |
Extrae información de audio. |
imm:DetectMediaMeta |
|
doc/convert |
Convierte un documento al formato especificado. |
imm:CreateOfficeConversionTask |
|
doc/edit |
Edita un documento. |
imm:GenerateWebofficeToken |
|
doc/preview |
Muestra la vista previa de un documento. |
imm:GenerateWebofficeToken |
|
doc/snapshot |
Crea una miniatura de un documento. |
imm:CreateOfficeConversionTask |
|
pointcloud/compress |
Comprime un archivo de nube de puntos. |
imm:CreateCompressPointCloudTask |
|
hls/m3u8 |
Genera una lista de reproducción de video. |
imm:GenerateVideoPlaylist |
|
hls/ts |
Crea una tarea de transcodificación en vivo. |
imm:LiveTranscoding |
Para procesar datos en un bucket de OSS con las capacidades de IMM, debe vincular el bucket a un proyecto de IMM. Al crear un proyecto de IMM, especifique un rol de servicio. De forma predeterminada, se aplica el rol AliyunIMMDefaultRole. Si accede al servicio con un usuario o un rol de RAM, el rol de servicio especificado para el proyecto debe tener el permiso para ejecutar la operación PassRole. El siguiente ejemplo de instrucción otorga dicho permiso:
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
}
Otorgar permisos de acceso a otros servicios en la nube a IMM
IMM necesita acceder a otros servicios relacionados para procesar datos. Por ejemplo, si desea procesar datos almacenados en OSS, escribir datos de salida en OSS y enviar notificaciones a Simple Message Queue (SMQ), debe autorizar a IMM a acceder a OSS y SMQ.
El rol de servicio predeterminado permite que IMM acceda a los servicios relacionados. Si prefiere restringir los permisos, cree un rol de servicio que incluya solo los permisos obligatorios y especifíquelo al crear un proyecto. Para obtener más información, consulte Configure a service role for a project.
Otorgar permisos obligatorios para escenarios de procesador por lotes o activador
Para usar procesadores por lotes y activadores, debe autorizar a IMM a acceder a otros servicios en la nube, como OSS. Si no hay ningún rol de servicio disponible, cree el rol de servicio predeterminado en la página Cloud Resource Access Authorization.
Ejemplos
Otorgar permisos de acceso total
A continuación ejemplo de política de RAM permite que un usuario acceda a todas las capacidades de procesamiento de datos de IMM desde OSS:
{
"Statement":[
{
"Effect":"Allow",
"Action":"oss:*",
"Resource":"*"
},
{
"Effect":"Allow",
"Action":"imm:*",
"Resource":"*"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "acs:ram:*:*:role/aliyunimmdefaultrole"
}
],
"Version":"1"
}
Otorgar permisos para operaciones específicas
A continuación ejemplo de política de RAM permite que un usuario acceda a las funciones de procesamiento de documentos en un bucket de OSS específico:
{
"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"
}
Otorgar los permisos obligatorios en un escenario de procesador por lotes o activador
A continuación ejemplo de política de RAM permite que IMM ejecute las acciones de OSS especificadas:
{
"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"
}