Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda> Object Storage Service> Preguntas frecuentes> Control de acceso> ¿Por qué sigue apareciendo el mensaje "Access denied" después de que IAM asignara los permisos del sistema de OBS?
Actualización más reciente 2023-12-26 GMT+08:00

¿Por qué sigue apareciendo el mensaje "Access denied" después de que IAM asignara los permisos del sistema de OBS?

Causa

Los permisos del sistema como OBS ReadOnlyAccess, OBS OperateAccess y OBS Buckets Viewer preestablecido en IAM solo permiten ciertas operaciones de OBS. Por ejemplo, el permiso de OBS OperateAccess le permite enumerar bucket, obtener información básica del bucket, obtener metadatos del bucket, listar objetos (no los objetos que se han versionado), cargar objetos, descargar objetos, eliminar objetos y obtener ACL de objetos. Realizar cada operación requiere invocar a una API de OBS.

Una vez que se hayan concedido permisos del sistema a su cuenta, puede invocar a estas API directamente o con los SDK. Sin embargo, cuando inicia sesión en OBS Console o usa OBS Browser+, se invoca a más API para cargar la lista de bucket o la página de descripción general del bucket. Si sus permisos no cubren esas API, se deniega el acceso o recibe un mensaje que indica que la operación no está permitida. Por ejemplo, cargar la página de descripción general del bucket implica llamadas a la API para consultar los estados de configuración del ciclo de vida y las reglas de CORS. Véase Figura 1. Sin embargo, los permisos del sistema preestablecidos no cubren estas operaciones.

Figura 1 Configuraciones básicas de bucket

Soluciones

Los permisos autorizados son válidos, aunque las operaciones en la consola o el cliente están restringidos. Puede invocar a las API directamente o con los SDK.

En OBS Console o en OBS Browser+ (un cliente), el permiso de OBS OperateAccess le permite cargar y descargar objetos.

Si no desea que aparezcan esos mensajes de error, puede configurar las políticas personalizadas de OBS en la consola de IAM para conceder más permisos de OBS a un grupo de usuarios y agregar el usuario que requiere los permisos a este grupo.

¿Por qué no puedo listar objetos en OBS Console incluso si se me han concedido los permisos de OBS OperateAccess y de OBS ReadOnlyAccess?

Las políticas de sistema de OBS OperateAccess y de OBS ReadOnlyAccess solo contienen obs:bucket:ListBucket (usado para listar objetos), pero no contienen obs:bucket:ListBucketVersions (usado para listar varias versiones de objetos).

Si un bucket tiene varias versiones de objetos, es posible que los usuarios de IAM no puedan enumerar objetos en el bucket a través de OBS Console. En tal caso, a los usuarios de IAM se les debe conceder el permiso obs:bucket:ListBucketVersions.

Control de acceso Preguntas frecuentes

more