Gestión del acceso a tablas de Oracle NoSQL Database Cloud Service
Obtenga información sobre la escritura de políticas y la visualización de sentencias de política típicas que puede utilizar para autorizar el acceso a tablas de la instancia de Oracle NoSQL Database Cloud Service.
En este artículo se incluyen los siguientes temas:
Acceso a tablas NoSQL en arrendamientos
En este tema se describe cómo escribir políticas que permitan a su arrendamiento acceder a tablas NoSQL de otros arrendamientos.
Si no está familiarizado con las políticas, consulte Introducción a las políticas.
Políticas de arrendamiento combinado
Es posible que la organización desee compartir recursos con otra organización que tenga su propio arrendamiento. Podría ser otra unidad de negocio de la compañía, un cliente de la compañía, una compañía que presta servicios a su compañía, etc. En casos como estos, necesita políticas de arrendamiento combinado además de las políticas de usuario y servicio necesarias descritas anteriormente.
Para acceder a los recursos y compartirlos, los administradores de ambos arrendamientos deben crear sentencias de política especiales que determinen de forma explícita los recursos que se pueden compartir y a los que se puede acceder. Estas sentencias especiales utilizan las palabras Definir, Endorse y Admitir.
Sentencias Endorse, Admit y Define
A continuación, se muestra una visión general de los verbos especiales utilizados en sentencias de arrendamiento combinado:
Endorse: indica el juego general de capacidades que un grupo de su propio arrendamiento puede realizar en otros arrendamientos. La sentencia Endorse siempre se corresponde al arrendamiento con el grupo de usuarios que cruzan los límites a otro arrendamiento para trabajar con los recursos de ese arrendamiento. En los ejemplos, hacemos referencia a este arrendamiento como el origen.
Admit: indica el tipo de capacidad de su propio arrendamiento que desea otorgar a un grupo del otro arrendamiento. La sentencia Admit corresponde al arrendamiento que otorga "admisión" en el arrendamiento. La sentencia Admit identifica el grupo de usuarios que requiere acceso a recursos desde el arrendamiento del origen e identifica con una sentencia Endorse correspondiente. En los ejemplos, hacemos referencia a este arrendamiento como el destino.
Define: asigna un alias a un OCID de arrendamiento para la sentencia de política Endorse and Admit. También se necesita la sentencia Definir en el arrendamiento de destino para asignar un alias al OCID del grupo de IAM de origen para las sentencias Admit.
Las sentencias Define se deben incluir en la misma entidad de política que la sentencia Endorse o la sentencia Admit. Las sentencias Endorse y Admit trabajan juntas, pero residen en políticas distintas, una en cada arrendamiento. Sin una sentencia correspondiente que especifique los accesos, una sentencia Endorse o Admit en particular no otorga acceso. Necesita un acuerdo de ambos arrendamientos.
Nota: Además de las sentencias de política, también debe estar suscrito a una región para compartir recursos entre regiones.
Sentencias de política del arrendamiento de origen
El administrador de código fuente crea sentencias que avalan a un grupo de IAM de código fuente que puede gestionar recursos en el arrendamiento de destino.
Nota: Las políticas entre arrendamientos también se pueden escribir con otros temas de política. Para obtener más información sobre los temas de política, consulte la sintaxis de políticas en la documentación de Oracle Cloud Infrastructure.
A continuación se presenta un ejemplo de una sentencia del grupo NoSQLAdmins de IAM que aprueba que el grupo NoSQLAdmins realice cualquier acto con todas las tablas NoSQL de cualquier arrendamiento:
Endorse group NoSQLAdmins to manage nosql-family in any-tenancy
Para escribir una política que reduzca el ámbito del acceso al arrendamiento, el administrador de destino debe proporcionar el OCID del arrendamiento de destino. A continuación se proporciona un ejemplo de sentencias de política que avalan el grupo NoSQLAdmins del grupo de IAM para gestionar tablas NoSQL solo en DestinationTenancy:
Define tenancy DestinationTenancy as ocid1.tenancy.oc1..<destination_tenancy_OCID>
Endorse group NoSQLAdmins to manage nosql-family in tenancy DestinationTenancy
Sentencias de política del arrendamiento de destino
El administrador de destino crea sentencias de política que:
-
Define el arrendamiento del origen y los grupos de IAM que tienen permiso para acceder a los recursos del arrendamiento. El administrador de origen debe proporcionar esta información.
-
Admiten esos orígenes definidos para acceder a las tablas de NoSQL a las que desea permitir acceso en su arrendamiento.
A continuación se presenta un ejemplo de sentencias de política que avalan el grupo de IAM NoSQLAdmins del arrendamiento de origen para realizar cualquier acto con todas las tablas NoSQL de su arrendamiento:
Define tenancy SourceTenancy as ocid1.tenancy.oc1..<source_tenancy_OCID>
Define group NoSQLAdmins as ocid1.group.oc1..<group_OCID>
Admit group NoSQLAdmins of tenancy SourceTenancy to manage nosql-family in tenancy
A continuación se muestra un ejemplo de sentencias de política que avalan el grupo de IAM NoSQLAdmins en el arrendamiento de origen para gestionar solo las tablas NoSQL en el compartimento Desarrollar:
Define tenancy SourceTenancy as ocid1.tenancy.oc1..<source_tenancy_OCID>
Define group NoSQLAdmins as ocid1.group.oc1..<group_OCID>
Admit group NoSQLAdmins of tenancy SourceTenancy to manage nosql-family in compartment Develop
Cómo otorgar permiso a otro usuario para gestionar tablas de NoSQL
Al activar el pedido de Oracle NoSQL Database Cloud Service, usted (el primer usuario) se encuentran en el grupo Administradores por defecto. Estar en el grupo Administradores ofrece todos los privilegios de administración en Oracle Cloud Infrastructure para que pueda gestionar tablas de Oracle NoSQL Database Cloud Service y mucho más. No es necesario delegar esta responsabilidad, pero, si lo desea, puede otorgar a otras partes privilegios para crear y gestionar tablas de Oracle NoSQL Database Cloud Service a través del permiso manage nosql-tables.
En Oracle Cloud Infrastructure, puede utilizar las políticas IAM de seguridad para otorgar permisos. En primer lugar, debe agregar el usuario a un grupo y, a continuación, crear una política de seguridad que otorgue al grupo el permiso manage nosql-tables en un compartimiento específico o en el arrendamiento (cualquier compartimiento del arrendamiento). Por ejemplo, puede crear una sentencia de política con un aspecto parecido al siguiente:
allow group MyAdminGroup to manage nosql-tables in tenancy
allow group MyAdminGroup to manage nosql-tables in compartment MyOracleNoSQL
Para saber cómo crear sentencias de política a la seguridad específicamente para Oracle NoSQL Database Cloud Service, consulte Configuración de usuarios, grupos y políticas con Identity and Access Management.
Sentencias de política típicas para gestionar tablas
Estas son sentencias de política típicas que puede utilizar para autorizar el acceso a las tablas de Oracle NoSQL Database Cloud Service.
Al crear una política para su arrendamiento, puede otorgar a los usuarios acceso a todos los compartimentos mediante una herencia de política. También puede restringir el acceso a compartimentos o tablas individuales de Oracle NoSQL Database Cloud Service.
Ejemplo - Para permitir que los administradores del grupo gestionen totalmente cualquier tabla de de Oracle NoSQL Database Cloud Service
allow group Administrators to manage nosql-tables in tenancy
allow group Administrators to manage nosql-rows in tenancy
allow group Administrators to manage nosql-indexes in tenancy
Ejemplo - Para permitir que los administradores del grupo realicen cualquier operación en las tablas NoSQL en el desarrollo del compartimento, use el tipo del recurso de familia.
allow group Admins to manage nosql-family in compartment Dev
Ejemplo - Para permitir que los grupos de análisis realicen operaciones de solo lectura con las Tablas NoSQL en el desarrollo de compartimento
allow group Analytics to read nosql-rows in compartment Dev
Ejemplo - Para permitir que Joe en el Desarrollador cree, obtenga y borre los índices de las tablas NoSQL en el desarrollo del compartimento
allow group Developer to manage nosql-indexes in compartment Dev
where request.user.id = '<OCID of Joe>'
Ejemplo - Para permitir que los administradores del grupo creen, borren y mueva tablas NoSQL solamente, pero no modifique en el desarrollo de compartimento.
allow group Admins to manage nosql-tables in compartment Dev
where any {request.permission = 'NOSQL_TABLE_CREATE',
request.permission = 'NOSQL_TABLE_DROP',
request.permission = 'NOSQL_TABLE_MOVE'}
Ejemplo - Para permitir que el grupo Developer lea, actualice y suprima filas de la tabla "customer" en el desarrollo del compartimento, pero no otras.
allow group Developer to manage nosql-rows in compartment Dev
where target.nosql-table.name = 'customer'