Entidades de recurso
Oracle recomienda utilizar la autenticación basada en entidad de recurso para Full Stack Disaster Recovery para utilizar funciones y funcionalidades adicionales. Utilice entidades de recurso para autenticar y acceder a otros recursos de Oracle Cloud Infrastructure. Para utilizar entidades de recurso, usted o el administrador de su arrendamiento deben definir las políticas y los grupos dinámicos de Oracle Cloud Infrastructure que permiten a las entidades acceder a los recursos de Oracle Cloud Infrastructure.
1. Cree un grupo dinámico y defina reglas de confrontación de la siguiente manera:
Un grupo dinámico permite agrupar recursos de OCI para que se les puedan asignar permisos colectivamente. La definición de reglas de coincidencia en el grupo dinámico especifica qué recursos se incluyen.
- Conectarse a su cuenta de OCI.
- Abra el menú de navegación y seleccione Identidad y seguridad > Dominios > [Su dominio] > Grupos > Grupos dinámicos.
- Haga clic en Crear grupo dinámico.
- Indique un nombre y una descripción significativos.
- En la sección Reglas de coincidencia, seleccione Coincidir con las reglas definidas a continuación. Esta configuración garantiza que los recursos que coinciden con cualquiera de las reglas especificadas se incluyan en el grupo dinámico.
Reglas de coincidencia de grupo dinámico:
Rule 1: All {resource.type='drprotectiongroup', resource.compartment.id='<dr_protection_group_compartment_ocid>'}
Rule 2: Any {instance.compartment.id = '<instance_compartment_ocid>'}
Rule 3: All {resource.type='computecontainerinstance', resource.compartment.id='<mysql_compartment_ocid>'}
Rule 4: All {resource.type='computecontainerinstance', resource.compartment.id='<oke_cluster_compartment_ocid>'}Guarde el grupo dinámico:
Después de definir las reglas de coincidencia, haga clic en Crear para guardar el grupo dinámico.
Para obtener más información, consulte Directrices para reglas de coincidencia en grupos dinámicos para Oracle Cloud Infrastructure (OCI) Full Stack Disaster Recovery.
2. Cree las políticas de IAM para el grupo dinámico como se indica a continuación:
Las políticas de IAM otorgan los permisos necesarios al grupo dinámico para gestionar recursos durante las operaciones de DR.
Navegue a las políticas:
En la consola de OCI, vaya a Identidad y seguridad > Dominios > [su dominio] > Políticas.
Creación de una Nueva Política:
- Haga clic en Crear política.
- Proporcione un nombre y descripción para la política.
- En Policy Builder, agregue sentencias para otorgar los permisos necesarios.
Sentencias de póliza:
Las sentencias de política necesarias dependen de los tipos de recursos gestionados por Full Stack DR.
Sustituya <dynamic_group_name> y <resource_compartment_name> por los nombres reales de grupo dinámico y compartimento.
Todas las sentencias de política:
Allow dynamic-group <dynamic_group_name> to manage disaster-recovery-family in compartment <dr_protection_group_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage object-family in compartment <object_storage_bucket_compartment_name>
Allow dynamic-group <dynamic_group_name> to use tag-namespaces in tenancy
Allow dynamic-group <dynamic_group_name> to read all-resources in tenancy
Allow dynamic-group <dynamic_group_name> to manage instance-family in compartment <instance_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-execution-family in compartment <instance_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-family in compartment <instance_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage instance-agent-plugins in compartment <instance_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage virtual-network-family in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage volume-family in compartment <volume_group_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage file-family in compartment <file_system_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage database-family in compartment <database_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage autonomous-database-family in compartment <autonomous_database_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage autonomous-database-family in compartment <autonomous_container_database_compartment_name>
Allow dynamic-group <dynamic_group_name> to update autonomous-vmclusters in compartment <autonomous_container_database_compartment_name>
Allow dynamic-group <dynamic_group_name> to update autonomousContainerDatabaseDataguardAssociations in compartment <autonomous_container_database_compartment_name>
Allow dynamic-group <dynamic_group_name> to update cloud-autonomous-vmclusters in compartment <autonomous_container_database_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage mysql-family in compartment <mysql_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage load-balancers in compartment <load_balancer_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage network-load-balancers in compartment <network_load_balancer_compartment_name>
Allow dynamic-group <dynamic_group_name> to read secret-family in compartment <vault_compartment_name>
Allow dynamic-group <dynamic_group_name> to read vaults in compartment <vault_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage cluster-family in compartment <oke_cluster_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage cluster-virtualnode-pools in compartment <oke_cluster_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage compute-container-family in compartment <oke_cluster_compartment_name>
Allow any-user to manage objects in compartment <object_storage_bucket_compartment_name> where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-creator', request.principal.cluster_id = '<cluster_ocid>'}
Allow any-user to manage objects in compartment <object_storage_bucket_compartment_name> where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-reader', request.principal.cluster_id = '<cluster_ocid>'}
Allow dynamic-group <dynamic_group_name> to read fn-app in compartment <function_compartment_name>
Allow dynamic-group <dynamic_group_name> to read fn-function in compartment <function_compartment_name>
Allow dynamic-group <dynamic_group_name> to use fn-invocation in compartment <function_compartment_name>
Para obtener más información, consulte Directrices para sentencias de política para Oracle Cloud Infrastructure (OCI) Full Stack Disaster Recovery
Revisar y crear:
Después de agregar las sentencias necesarias, revise la política y haga clic en Crear para aplicarla.
Siguiendo estos pasos, puedes configurar la autenticación de entidad de recurso para OCI Full Stack Disaster Recovery, lo que permite una gestión segura y eficiente de tus operaciones de recuperación ante desastres.
Referencia:
Directrices para reglas de coincidencia en grupos dinámicos para Oracle Cloud Infrastructure (OCI) Full Stack Disaster Recovery
Definir reglas de paridad:
Alinee las reglas de coincidencia de recursos según el tipo de recurso que desee proteger con el servicio Full Stack Disaster Recovery.
Reglas de coincidencia de grupo de protección de DR:
Este es un paso obligatorio, ya que es la entidad de recurso que se utiliza principalmente para la configuración y ejecución de DR mediante la entidad de recurso
Todos los grupos de protección de DR de un compartimento específico:
All {resource.type='drprotectiongroup', resource.compartment.id='<dr_protection_group_compartment_ocid>'}
Replace <dr_protection_group_compartment_ocid> with your DR protection group compartment OCID.
Todos los grupos de protección de DR en varios compartimentos:
All {resource.type='drprotectiongroup', resource.compartment.id='<dr_protection_group_compartment_ocid1>'}
All {resource.type='drprotectiongroup', resource.compartment.id='<dr_protection_group_compartment_ocid2>'}
Todos los grupos de protección de DR en todos los compartimentos:
All {resource.type='drprotectiongroup'}
Reglas de coincidencia de instancias informáticas:
Esto es necesario si tiene instancias informáticas, miembros en movimiento o no en movimiento en el grupo de protección de DR. Utilice estas reglas para incluir instancias informáticas en la configuración de DR:
Any {instance.compartment.id = '<instance_compartment_ocid>'}
Replace <instance_compartment_ocid> with your compute instance compartment OCIDInstancias en varios compartimentos:
Any {instance.compartment.id = '<instance_compartment_ocid1>'}
Any {instance.compartment.id = '<instance_compartment_ocid2>'}
Reglas de coincidencia del cluster de OKE y el sistema de base de datos MySQL:
Esto es necesario si tiene miembros del cluster de OKE o del sistema de base de datos MySQL en el grupo de protección de DR.
Configuración y ejecuciones de Disaster Recovery que se ejecutan mediante instancias de contenedor de recursos informáticos
Todas las instancias de cluster de OKE de un compartimento específico:
All {resource.type='computecontainerinstance', resource.compartment.id='<oke_cluster_compartment_ocid>'}
Replace <oke_cluster_compartment_ocid> with your OKE cluster compartment OCID
Todos los sistemas de base de datos MySQL de un compartimento específico:
All {resource.type='computecontainerinstance', resource.compartment.id='<mysql_compartment_ocid>'}
Replace <mysql_compartment_ocid> with the relevant MySQL compartment OCID
Todas las instancias de contenedor de recursos informáticos, independientemente del compartimento (se aplica a todos los recursos relevantes):
All {resource.type='computecontainerinstance'}
Estas reglas garantizan que cualquiera de las condiciones especificadas pueda coincidir, lo que permite flexibilidad en la inclusión de recursos.
Directrices para sentencias de política para la recuperación ante desastres de pila completa de Oracle Cloud Infrastructure (OCI):
Para permitir una gestión fluida de los recursos con Full Stack DR, configure políticas de IAM para su grupo dinámico. A continuación se muestran ejemplos de diferentes tipos de miembros:
Políticas de recursos comunes (aplicables entre tipos de miembros)
Redes (para: instancias informáticas, base de datos autónoma, equilibradores de carga, sistemas de archivos, clusters de OKE):
Allow dynamic-group <dynamic_group_name> to use virtual-network-family in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use subnets in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use vnics in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use network-security-groups in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use private-ips in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use public-ips in compartment <network_compartment_name>
Allow dynamic-group <dynamic_group_name> to use tag-namespaces in compartment <tag_compartment_name>
Almacén (para: instancias informáticas, base de datos autónoma, grupos de volúmenes, sistemas de archivos, clusters de OKE):
Allow dynamic-group <dynamic_group_name> to read vaults in compartment <vault_compartment_name>
Allow dynamic-group <dynamic_group_name> to read secret-family in compartment <vault_compartment_name
Allow dynamic-group <dynamic_group_name> to use tag-namespaces in
tenancyPara recursos del servicio de recuperación ante desastres (configuración y acciones de DR):
Allow dynamic-group <dynamic_group_name> to manage disaster-recovery-family in compartment <dr_protection_group_compartment_name>
Allow dynamic-group <dynamic_group_name> to manage objects in compartment <dr_protection_group_compartment_name>
Allow dynamic-group <dynamic_group_name> to read all-resources in tenancy
Allow dynamic-group <dynamic_group_name> to manage object-family in compartment
<object_storage_bucket_compartment_name>- Instancias informáticas (movibles y no móviles):
Allow dynamic-group <dynamic_group_name> to manage instance-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage volume-family in compartment <volume_group_compartment_name> Allow dynamic-group <dynamic_group_name> to manage virtual-network-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-execution-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage instance-agent-plugins in compartment <instance_compartment_name> - Grupos de volúmenes
Allow dynamic-group <dynamic_group_name> to manage volume-family in compartment <volume_group_compartment_name>(Include Vault policies from above) - Sistemas de archivos
Allow dynamic-group <dynamic_group_name> to manage file-family in compartment <file_system_compartment_name>(Include Vault policies from above) - Cubos de almacenamiento de objetos
Allow dynamic-group <dynamic_group_name> to manage object-family in compartment <object_storage_bucket_compartment_name> - Base de Datos
Allow dynamic-group <dynamic_group_name> to manage databases in compartment <database_compartment_name>(Include Vault policies from above) - Autonomous Database
Allow dynamic-group <dynamic_group_name> to manage autonomous-database-family in compartment <autonomous_database_compartment_name> (Include Vault policies from above) - Base de datos de contenedores autónoma
Allow dynamic-group <dynamic_group_name> to manage autonomous-database-family in compartment <autonomous_container_database_compartment_name> Allow dynamic-group <dynamic_group_name> to update cloud-autonomous-vmclusters in compartment <autonomous_container_database_compartment_name> Allow dynamic-group <dynamic_group_name> to update autonomous-vmclusters in compartment <autonomous_container_database_compartment_name> Allow dynamic-group <dynamic_group_name> to update autonomousContainerDatabaseDataguardAssociations in compartment <autonomous_container_database_compartment_name> - Sistemas de base de datos MySQL
Allow dynamic-group <dynamic_group_name> to manage mysql-family in compartment <mysql_compartment_name> - Equilibrios de Carga
Allow dynamic-group <dynamic_group_name> to manage load-balancers in compartment <load_balancer_compartment_name> - Equilibradores de carga de red
Allow dynamic-group <dynamic_group_name> to manage network-load-balancers in compartment <network_load_balancer_compartment_name> - Clusters de OKE
Allow dynamic-group <dynamic_group_name> to manage cluster-family in compartment <oke_cluster_compartment_name> Allow dynamic-group <dynamic_group_name> to manage cluster-virtualnode-pools in compartment <oke_cluster_compartment_name> Allow dynamic-group <dynamic_group_name> to manage compute-container-family in compartment <oke_cluster_compartment_name> Allow dynamic-group <dynamic_group_name> to manage object-family in compartment <object_storage_bucket_compartment_name> With Virtual Node Pool: Allow any-user to manage objects in compartment <object_storage_bucket_compartment_name> where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-reader', request.principal.cluster_id = '<cluster_ocid>'} Allow any-user to manage objects in compartment <object_storage_bucket_compartment_name> where all { request.principal.type = 'workload', request.principal.namespace = 'brie', request.principal.service_account = 'brie-creator', request.principal.cluster_id = '<cluster_ocid>'} - Pasos definidos por el usuario
Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-execution-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage instance-agent-command-family in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage instance-agent-plugins in compartment <instance_compartment_name> Allow dynamic-group <dynamic_group_name> to manage objects in compartment <object_storage_bucket_compartment_name> - Funciones (Tipo de Paso: FUNCIONES)
Allow dynamic-group <dynamic_group_name> to read fn-app in compartment <function_compartment_name> Allow dynamic-group <dynamic_group_name> to read fn-function in compartment <function_compartment_name> Allow dynamic-group <dynamic_group_name> to use fn-invocation in compartment <function_compartment_name>
Sustituya <Dynamic_Group_Name> por el nombre del grupo dinámico y <resource_compartment_name> por el nombre de compartimento adecuado para cada tipo de recurso.
Para obtener más información sobre las políticas creadas en el paso anterior, consulte Políticas para Otros Servicios Gestionados por Full Stack Disaster Recovery.
Para obtener más información sobre cómo agregar reglas de coincidencia en grupos dinámicos creados en el paso anterior, consulte Escritura de reglas de coincidencia para definir grupos dinámicos.
Para obtener más información sobre cómo agregar sentencias de política en las políticas para el grupo dinámico creado en el paso anterior, consulte Escritura de políticas para grupos dinámicos.
Tema principal: Políticas