¿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.
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
- ¿Cómo puedo controlar el acceso a OBS?
- ¿Cuáles son las diferencias entre el uso de un permiso de IAM y una política de bucket en el control de acceso?
- ¿Cuál es la relación entre una política de bucket y una política de objeto?
- ¿Por qué sigue apareciendo el mensaje "Access denied" después de que IAM asignara los permisos del sistema de OBS?
- ¿Por qué aparece el mensaje "Access denied" después de que se me otorgaron los permisos de lectura y escritura para un bucket?
- ¿Por qué no puedo acceder a OBS (403 AccessDenied) después de recibir el permiso de acceso de OBS?
- ¿Cómo puedo comprobar si mi política de bucket es privada, pública de lectura o pública de lectura y de escritura?
Comentarios
¿Le pareció útil esta página?
Deje algún comentariomore