Activación de Seguridad de instancia
Active la seguridad de instancia en Cloud Guard.
Para activar la seguridad de instancia en su arrendamiento:
- Aplique una de las recetas de detector de seguridad de instancia gestionada por Oracle a un destino de Cloud Guard. Esto activa la seguridad de instancia en Cloud Guard para su arrendamiento. Consulte Recetas de detector de seguridad de instancias.
Puede crear un nuevo destino o puede utilizar un destino existente. Consulte Acerca de los destinos de OCI.
- Agregue las políticas de seguridad de instancias a su arrendamiento.
Aplicación de una receta de seguridad de instancia a un nuevo destino de Cloud Guard
- El paso final para activar la seguridad de instancia es agregar las sentencias de política en la consola.
Si no activa los logs raw de seguridad de instancia aquí, puede activarlos desde la consola del servicio Logging. Consulte Enabling Logs from the Logging Service.
Aplicación de una receta de seguridad de instancia a un destino de Cloud Guard
El paso final para activar la seguridad de instancia es agregar las sentencias de política en la consola.
Si no activa los logs raw de seguridad de instancia aquí, puede activarlos desde la consola del servicio Logging. Consulte Enabling Logs from the Logging Service.
Sentencias de política para seguridad de instancia
Debe agregar estas políticas en la consola como parte de la activación de la seguridad de instancia.
Las políticas permiten al agente de seguridad de instancia acceder a los recursos necesarios en el arrendamiento y, sin estas políticas, no obtendrá ningún resultado.
Para obtener información sobre cómo introducir las sentencias de política en la consola, consulte Creación de una política.
Sentencias de política de usuario
Estas políticas proporcionan permisos de usuario para utilizar la seguridad de instancia para consultas bajo demanda y consultas programadas. Agréguelos a las políticas de usuario, sustituyendo group
por el nombre de un grupo de usuarios adecuado.
Allow group <group> to { INSTANCE_READ } in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_READ} in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_CREATE} in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_INSPECT } in compartment <compartment>
Allow group <group> to { WLP_ADHOC_QUERY_DELETE } in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_READ} in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_CREATE} in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_INSPECT } in compartment <compartment>
Allow group <group> to { CG_ADHOC_QUERY_DELETE } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_INSPECT} in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_READ } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_CREATE } in compartment <compartment>
Allow group <group> to { CG_DATA_SOURCE_DELETE } in compartment <compartment>
Sentencias de política de registro de servicio
Estas políticas permiten a los usuarios acceder a los logs. Agréguelos a las políticas de usuario, sustituyendo group
por el nombre de un grupo de usuarios adecuado.
Allow group <group> to { CG_SERVICE_LOGGING_READ } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_CREATE } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_UPDATE } in compartment <compartment>
Allow group <group> to { CG_SERVICE_LOGGING_DELETE } in compartment <compartment>
Sentencias de política del arrendamiento
Estas políticas permiten a la seguridad de instancia acceder a los recursos necesarios en el arrendamiento.
Allow any-user to { WLP_BOM_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_CONFIG_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_ADHOC_QUERY_READ } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Allow any-user to { WLP_ADHOC_RESULTS_CREATE } in tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent'}
Endorse any-user to { WLP_LOG_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_METRICS_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_ADHOC_QUERY_READ } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Endorse any-user to { WLP_ADHOC_RESULTS_CREATE } in any-tenancy where all { request.principal.id = target.agent.id, request.principal.type = 'workloadprotectionagent' }
Uso de grupos dinámicos para controlar el acceso a consultas programadas y a demanda
Debe crear grupos dinámicos para trabajar con consultas a demanda (ad hoc) y programadas. El tipo de recurso es:
- Para consultas bajo demanda,
cloudguardadhocquery
. - Para consultas programadas,
cloudguarddatasource
.
- Cada consulta se enlaza automáticamente a un grupo dinámico basado en el tipo de recurso y las etiquetas opcionales.
- El acceso está determinado por el grupo dinámico al que pertenece la consulta.
- Si no existen políticas para una consulta, obtiene una excepción no autorizada cuando se ejecuta la consulta.
En este ejemplo se muestra cómo crear un grupo dinámico para cada tipo de consulta. Para obtener más información, consulte Gestión de grupos dinámicos.
- Cree los grupos dinámicos:
Grupo dinámico Sentencia del Grupo Dinámico adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id'}
scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-compartment-id' }
Si utiliza el agente local, puede utilizar los mismos grupos dinámicos, o bien puede crear grupos dinámicos independientes según el compartimento que configuren sus instancias locales.
Grupo dinámico Sentencia del Grupo Dinámico on_prem_adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-on-prem-compartment-id'}
on_prem_scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-on-prem-compartment-id' }
- A continuación, escriba políticas para otorgar acceso a la instancia de lectura a los grupos dinámicos recién creados para su compartimento o arrendamiento (compartimento raíz).
allow dynamic-group adhoc_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group scheduled_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguarddatasource' }
Si está utilizando el agente local, hay dos políticas adicionales que debe escribir.
allow dynamic-group on_prem_adhoc_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group on_prem_scheduled_query_dg to read instances in <compartment or tenancy details> where all { request.principal.type = 'cloudguarddatasource' }
Para obtener más información sobre la creación de políticas para arrendamientos o compartimentos, consulte cómo funcionan las políticas.
- Ahora, puede crear consultas:
Uso de Etiquetas para Aislar Permisos de Consulta
Puede utilizar etiquetas para aislar y categorizar las consultas programadas que está ejecutando. Para obtener más información sobre el uso de etiquetas, consulte Etiquetado.
Para utilizar etiquetas, debe crear las consultas bajo demanda o programadas mediante la CLI o la API.
- Cree grupos dinámicos con etiquetas:
Grupo dinámico Sentencia de grupo dinámico adhoc_query_dg
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id', tag.namespace.tag-key.value = 'tag-value' }
scheduled_query_dg
all { resource.type = 'cloudguarddatasource', resource.compartment.id = 'my-compartment-id', tag.namespace.tag-key.value = 'tag-value' }
Por ejemplo, supongamos que tiene un espacio de nombres de etiqueta denominado "Departamentos" y una etiqueta en ese espacio de nombres denominada "department_type" con una lista de valores de ["hr", "finance", "marketing", "it"]. La sentencia de grupo dinámico para una consulta personalizada sería
all { resource.type = 'cloudguardadhocquery', resource.compartment.id = 'my-compartment-id', tag.department_type.tag-key.value = 'finance' }
- Escribir políticas para otorgar acceso a la instancia de lectura a los grupos dinámicos recién creados.
allow dynamic-group adhoc_query_dg to read instances in compartment my-compartment where all { request.principal.type = 'cloudguardadhocquery' } allow dynamic-group scheduled_query_dg to read instances in compartment my-compartment where all { request.principal.type = 'cloudguarddatasource' }
- Ahora, puede crear consultas mediante la CLI o la API con las etiquetas que ha definido: