Configura el control de acceso a las funciones con la IAM
Google Security Operations se integra en Identity and Access Management (IAM) de Google Cloud otorgar permisos específicos de Google SecOps y roles predefinidos. Los administradores de Google SecOps pueden a las funciones con la creación de políticas de IAM que a usuarios o grupos a roles predefinidos o pueden crear roles personalizados de IAM. Esta función no controla el acceso a registros o campos de UDM específicos en un registro de UDM.
En este documento, se hace lo siguiente:
- Describe cómo Google SecOps se integra en IAM.
- Explica en qué se diferencian los roles predefinidos de IAM de los grupos originales de RBAC de atributos.
- Proporciona pasos para migrar una instancia de Google SecOps a IAM.
- Proporciona ejemplos de cómo asignar permisos con la IAM.
- Resume los permisos y roles predefinidos disponibles en IAM.
Para ver una lista de los permisos de Google SecOps de uso general y la y los registros que producen, consulta Permisos y métodos de la API por grupo de recursos. Para ver una lista de todos los permisos de Google SecOps, consulta Referencia de permisos de la administración de identidades y accesos.
Es posible que estés en proceso de migrar tus instancias de Google SecOps de la implementación de RBAC de la función original. En este documento, se denomina Feature RBAC se usa para hacer referencia al control de acceso basado en funciones que estaba disponible anteriormente que se configura con Google SecOps y no con IAM. IAM se usa para describir el control de acceso basado en funciones que configuras con IAM.
Cada permiso de Google SecOps está asociado con una API de Google SecOps. recurso y método. Cuando se le otorga un permiso a un usuario o grupo, el usuario puede acceder a la función en Google SecOps y enviar una solicitud con el método de la API relacionado
Cómo se integra Google SecOps en la IAM
Para usar IAM, Google SecOps debe estar vinculado a Google Cloud y debe configurarse con Cloud Identity, Google Workspace o la federación de identidades de personal de Google Cloud como intermediario en el proceso a un proveedor de identidad externo. Para obtener información sobre la autenticación de terceros consulta Integra Google SecOps con un proveedor de identidad de terceros.
Google SecOps realiza los siguientes pasos para verificar y controlar el acceso a las funciones:
- Luego de acceder a Google SecOps, un usuario accede a un servicio de página de la aplicación. Como alternativa, el usuario puede enviar una solicitud a la API a Google SecOps.
- Google SecOps verifica los permisos otorgados en la IAM políticas definidas para ese usuario.
- IAM muestra la información de autorización. Si el usuario accedió una página de aplicación, Google SecOps habilita el acceso solo a aquellas funciones que a las que se le otorgó acceso al usuario.
- Si el usuario envió una solicitud a la API y no tiene permiso para realizar la la acción solicitada, la respuesta de la API incluye un error. De lo contrario, se muestra una respuesta estándar.
Google SecOps ofrece un conjunto de roles predefinidos con un conjunto definido de permisos que controlan si un usuario puede acceder a la función. La única política de IAM controla el acceso a la función mediante la interfaz web y la API.
Si hay otros servicios de Google Cloud en el proyecto de Google Cloud vinculados a Google SecOps y quieres limitar un usuario con el rol de administrador de IAM del proyecto para modificar solo los recursos de Google SecOps, asegúrate de agregar IAM condiciones a la política de permisos. Consulta Asigna roles a usuarios y grupos. para ver un ejemplo de cómo hacerlo.
Los administradores personalizan el acceso a las funciones de Google SecOps según la solicitud en tu organización.
Antes de comenzar
- Asegúrate de estar familiarizado con Cloud Shell. el comando de gcloud CLI y la consola de Google Cloud.
- Familiarízate con IAM, incluidos los siguientes conceptos:
- Descripción general de IAM.
- Descripción general de roles y permisos, roles predefinidos frente a los roles personalizados y la creación de roles personalizados.
- Condiciones de IAM.
- Realiza todos los pasos de Vincula Google SecOps con un proyecto de Google Cloud. para configurar un proyecto que se vincule a Google SecOps.
- Configura tu proveedor de identidad mediante una de las siguientes opciones:
- Configura un proveedor de identidad de Google Cloud
- Realiza todos los pasos que se indican en Integra Google SecOps con un proveedor de identidad de terceros para configurar la autenticación a través de un proveedor de identidad (IdP) de terceros.
- Vincula un proyecto a tu instancia de Google SecOps y configura el proveedor de identidad.
- Asegúrate de tener los permisos necesarios para realizar los pasos que se indican en este documento. Para obtener información sobre los permisos necesarios para cada fase del proceso de integración, consulta Roles obligatorios.
Planifica la implementación
Creas políticas de IAM que respaldan los costos los requisitos de implementación. Puedes usar los roles predefinidos de Google SecOps o los roles personalizados que crees.
Revisa la lista de roles y permisos predefinidos de Google SecOps en relación con los requisitos de tu organización. Identifica qué miembros de tu organización deben tienen acceso a cada función de Google SecOps. Si tu organización requiere Políticas de IAM que difieren de las funciones predefinidas de Google SecOps roles, crean roles personalizados para respaldar estos requisitos. Para obtener información sobre de IAM personalizados, consulta Crea y administra roles personalizados.
Resumen de los roles y permisos de Google SecOps
En las siguientes secciones, se proporciona un resumen de alto nivel de los roles predefinidos.
La lista más reciente de permisos de Google SecOps se encuentra en
Referencia de permisos de IAM. En la sección
En la sección Buscar un permiso, busca el término chronicle
.
La lista más reciente de roles predefinidos de Google SecOps se encuentra en
Referencia de roles básicos y predefinidos de IAM. Por debajo
En la sección Roles predefinidos, selecciona el servicio Roles de la API de Chronicle
o busca el término chronicle
.
Para obtener información sobre los métodos y permisos de la API, en la las páginas en las que se usan los permisos y la información que se encuentra en los Registros de auditoría de Cloud cuando se llama a la API, consulta Permisos de Chronicle en IAM.
Roles predefinidos de Google SecOps en IAM
Google Security Operations proporciona los siguientes roles predefinidos tal como aparecen en IAM.
Rol predefinido en IAM | Título | Descripción |
---|---|---|
roles/chronicle.admin |
Administrador de la API de Chronicle | Acceso total a la aplicación de Google Security Operations y a los servicios de la API, incluida la configuración global. |
roles/chronicle.editor |
Editor de la API de Chronicle | Modificar el acceso a la aplicación y los recursos de la API de Google Security Operations. |
roles/chronicle.viewer |
Visualizador de API de Chronicle | Acceso de solo lectura a la aplicación de Google Security Operations y a los recursos de la API |
roles/chronicle.limitedViewer |
Visualizador limitado de la API de Chronicle | Otorga acceso de solo lectura a la solicitud y la API de Google Security Operations excluyendo las reglas del motor de detección y las cazas retrospectivas. |
Permisos de Google SecOps en IAM
Los permisos de Google SecOps se corresponden uno a uno con Google SecOps métodos de API. Cada permiso de Google SecOps habilita una acción específica en un función específica de Google SecOps cuando se usa la aplicación web o la API. Las APIs de Google SecOps que se usan con la IAM se encuentran en la etapa de lanzamiento Alfa.
Los nombres de los permisos de Google SecOps siguen el formato SERVICE.FEATURE.ACTION
.
Por ejemplo, el nombre del permiso chronicle.dashboards.edit
consta de lo siguiente:
lo siguiente:
chronicle
: Es el nombre del servicio de la API de Google SecOps.dashboards
: Es el nombre del componente.edit
: Es la acción que se puede realizar en el componente.
El nombre del permiso describe la acción que puedes realizar en la función en
SecOps de Google. Todos los permisos de Google SecOps tienen el nombre de servicio chronicle
.
Asigna roles a usuarios y grupos
En las siguientes secciones, se proporcionan ejemplos de casos de uso para crear IAM
y políticas de seguridad. El término <project>
se usa para representar el ID del proyecto
que uniste a Google SecOps.
Luego de habilitar la API de Chronicle, los roles predefinidos de Google SecOps y permisos están disponibles en IAM y puedes crear políticas para respaldar los requisitos de la organización.
Si tienes una instancia de Google SecOps recién creada, empieza a crear políticas de IAM para cumplir con los requisitos de la organización.
Si se trata de una instancia existente de Google SecOps, consulta Cómo migrar Google SecOps a IAM para obtener control de acceso a las funciones. para obtener información sobre la migración de la instancia a IAM.
Ejemplo: Asigna el rol de administrador de IAM del proyecto en un proyecto dedicado
En este ejemplo, el proyecto está dedicado a tu instancia de Google SecOps. Otorgas al Administrador de IAM del proyecto rol de IAM a un usuario para que pueda otorgar y modificar el rol de IAM del proyecto y vinculaciones de IAM. El usuario puede administrar todos los roles y permisos de Google SecOps. en el proyecto y realizar las tareas que otorga el rol de administrador de IAM del proyecto.
Asigna el rol con la consola de Google Cloud
En los siguientes pasos, se describe cómo otorgar un rol a un usuario con la consola de Google Cloud.
- Abre la consola de Google Cloud.
- Selecciona el proyecto vinculado a Google SecOps.
- Selecciona IAM y Administrador.
- Selecciona Otorgar acceso. Aparecerá la opción Otorgar acceso a
<project>
. - En la sección Agregar principales, ingresa la dirección de correo electrónico de la cuenta administrada en el campo Principales nuevas.
- En la sección Asignar roles, en el menú Selecciona un rol, selecciona el rol Administrador de IAM del proyecto.
- Haz clic en Guardar.
- Abre la pestaña IAM > Permisos para verificar que el usuario tenga el rol correcto.
Asigna el rol con Google Cloud CLI.
En el siguiente comando de ejemplo, se muestra cómo otorgar la función chronicle.admin
a un usuario
cuando uses la federación de identidades de personal.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador del grupo de trabajadores que se creó para tu proveedor de identidad.USER_EMAIL
: la dirección de correo electrónico del usuario.
En el siguiente comando de ejemplo, se muestra cómo otorgar el rol chronicle.admin
a un grupo
cuando uses Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member "user:USER_EMAIL" \
--role=roles/chronicle.admin
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.USER_EMAIL
: la dirección de correo electrónico del usuario.
Ejemplo: Asigna el rol Administrador de IAM del proyecto en un proyecto compartido
En este ejemplo, el proyecto se usa para varias aplicaciones. Depende de un instancia de Google SecOps y ejecuta servicios no relacionados con Google SecOps. Por ejemplo, un recurso de Compute Engine que se usa para otro propósito.
En este caso, puedes otorgar el rol Administrador de IAM del proyecto a un usuario para que pueda otorgar y modificar las vinculaciones de roles de IAM del proyecto y configurar Google SecOps También agregarás IAM a la vinculación de rol para limitar su acceso solo a las operaciones roles en el proyecto. Este usuario solo puede otorgar roles especificados en la condición de IAM.
Para obtener más información sobre las condiciones de IAM, consulta Descripción general de las condiciones de IAM y Administra las vinculaciones de roles condicionales.
Asigna el rol con la consola de Google Cloud
En los siguientes pasos, se describe cómo otorgar un rol a un usuario con la consola de Google Cloud.
- Abre la consola de Google Cloud.
- Selecciona el proyecto vinculado a Google SecOps.
- Selecciona IAM y Administrador.
- Selecciona Otorgar acceso. Aparecerá la opción Otorgar acceso a
<project>
. - En el diálogo Otorgar acceso a
<project>
, en la sección Agregar principales, haz lo siguiente: ingresa la dirección de correo electrónico del usuario en el campo Principales nuevas. - En la sección Asignar roles, en el menú Selecciona un rol, elige el Administrador de IAM del proyecto.
- Haz clic en + Agregar condición de IAM.
- En el diálogo Agregar condición, ingresa la siguiente información:
- Ingresa un Título para la condición.
- Selecciona el Editor de condiciones.
- Ingresa la siguiente condición:
api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])
- Haz clic en Guardar en el diálogo Agregar condición.
- Haz clic en Guardar en el diálogo Otorgar acceso a
<project>
. - Abre la pestaña IAM > Permisos para verificar que el usuario tenga el rol correcto.
Asigna el rol con Google Cloud CLI.
En el siguiente comando de ejemplo, se muestra cómo otorgar chronicle.admin
a un usuario
y aplicar condiciones de IAM cuando se use la federación de identidades de personal.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador de la fuerza de trabajo. para tu proveedor de identidad.USER_EMAIL
: la dirección de correo electrónico del usuario.
En el siguiente comando de ejemplo, se muestra cómo otorgar chronicle.admin
a un grupo.
y aplicar condiciones de IAM cuando uses Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.USER_EMAIL
: Es la dirección de correo electrónico del usuario, comobob@example.com
.
Ejemplo: Asigna el rol de Editor de la API de Chronicle a un usuario
En esta situación, quieres permitir que un usuario modifique el acceso a los recursos de la API de Google SecOps.
Asigna el rol con la consola de Google Cloud
- Abre la consola de Google Cloud.
- Selecciona el proyecto vinculado a Google SecOps.
- Selecciona IAM y Administrador.
- Selecciona Otorgar acceso. Se abrirá el diálogo Otorgar acceso a
<project>
. - En la sección Agregar principales, en el campo Principales nuevas, ingresa la dirección de correo electrónico del usuario.
- En la sección Asignar roles, en el menú Selecciona un rol, elige el rol Editor de la API de Google SecOps.
- Haz clic en Guardar en el diálogo Otorgar acceso a
<project>
. - Abre la pestaña IAM > Permisos para verificar que el usuario tenga el rol correcto.
Asigna el rol con Google Cloud CLI.
En el siguiente comando de ejemplo, se muestra cómo otorgar la función chronicle.editor
a un usuario
cuando uses la federación de identidades de personal.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.editor
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador del grupo de trabajadores que se creó para tu proveedor de identidad.USER_EMAIL
: la dirección de correo electrónico del usuario.En el siguiente comando de ejemplo, se muestra cómo otorgar la función
chronicle.editor
a un usuario cuando uses Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.editor
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador del grupo de trabajadores que se creó para tu proveedor de identidad.USER_EMAIL
: la dirección de correo electrónico del usuario.
Ejemplo: Crea un rol personalizado y asígnalo a un grupo
Si los roles predefinidos de Google SecOps no proporcionan el grupo de permisos que se ajusten al caso de uso de tu organización, puedes crear un rol personalizado y asignar permisos de Google SecOps para ese rol personalizado. Tú asignas el rol personalizado a un usuario o grupo. Para obtener más información sobre los roles personalizados de IAM, Consulta Crea y administra roles personalizados.
Los siguientes pasos te permiten crear un rol personalizado llamado LimitedAdmin
.
Crea un archivo YAML o JSON que defina el rol personalizado, llamado
LimitedAdmin
, y los permisos otorgados a este rol. El siguiente es un ejemplo de archivo YAML.title: "LimitedAdmin" description: "Admin role with some permissions removed" stage: "ALPHA" includedPermissions: - chronicle.collectors.create - chronicle.collectors.delete - chronicle.collectors.get - chronicle.collectors.list - chronicle.collectors.update - chronicle.dashboards.copy - chronicle.dashboards.create - chronicle.dashboards.delete - chronicle.dashboards.get - chronicle.dashboards.list - chronicle.extensionValidationReports.get - chronicle.extensionValidationReports.list - chronicle.forwarders.create - chronicle.forwarders.delete - chronicle.forwarders.generate - chronicle.forwarders.get - chronicle.forwarders.list - chronicle.forwarders.update - chronicle.instances.get - chronicle.instances.report - chronicle.legacies.legacyGetCuratedRulesTrends - chronicle.legacies.legacyGetRuleCounts - chronicle.legacies.legacyGetRulesTrends - chronicle.legacies.legacyUpdateFinding - chronicle.logTypeSchemas.list - chronicle.multitenantDirectories.get - chronicle.operations.cancel - chronicle.operations.delete - chronicle.operations.get - chronicle.operations.list - chronicle.operations.wait - chronicle.parserExtensions.activate - chronicle.parserExtensions.create - chronicle.parserExtensions.delete - chronicle.parserExtensions.generateKeyValueMappings - chronicle.parserExtensions.get - chronicle.parserExtensions.legacySubmitParserExtension - chronicle.parserExtensions.list - chronicle.parserExtensions.removeSyslog - chronicle.parsers.activate - chronicle.parsers.activateReleaseCandidate - chronicle.parsers.copyPrebuiltParser - chronicle.parsers.create - chronicle.parsers.deactivate - chronicle.parsers.delete - chronicle.parsers.get - chronicle.parsers.list - chronicle.parsers.runParser - chronicle.parsingErrors.list - chronicle.validationErrors.list - chronicle.validationReports.get - resourcemanager.projects.getIamPolicy
Crea el rol personalizado. El siguiente comando de ejemplo de gcloud CLI demuestra cómo crear este rol personalizado con el archivo YAML que creaste en del paso anterior.
gcloud iam roles create ROLE_NAME \ --project=PROJECT_ID \ --file=YAML_FILE_NAME
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.YAML_FILE_NAME
: Es el nombre del archivo que creaste en el paso anterior.ROLE_NAME
: Es el nombre de la función personalizada como se define en el archivo YAML.
Asignar el rol personalizado con Google Cloud CLI
El siguiente comando de ejemplo demuestra cómo otorgar a un grupo de usuarios el Rol personalizado,
limitedAdmin
cuando se usa la federación de identidades de personal.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador del grupo de trabajadores que se creó para tu proveedor de identidad.GROUP_ID
: Es el identificador de grupo creado en el personal. la federación de identidades. Consulta Representa a los usuarios del grupo de trabajadores en las políticas de IAM para obtener más información. sobre el identificador de grupo creado en el personal la federación de identidades. Consulta Representa a los usuarios del grupo de trabajadores en las políticas de IAM para obtener más información. acerca de laGROUP_ID
.
El siguiente comando de ejemplo demuestra cómo otorgar a un grupo de usuarios el rol personalizado,
limitedAdmin
cuando se usa Cloud Identity o .gcloud projects add-iam-policy-binding PROJECT_ID \ --member=groupid:GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto vinculado a Google SecOps. proyecto que creaste en Vincula una instancia de Google SecOps a un proyecto de Google Cloud. Consulta Crea y administra proyectos. para obtener una descripción de los campos que identifican un proyecto.WORKFORCE_POOL_ID
: Es el identificador del grupo de trabajadores que se creó para tu proveedor de identidad.GROUP_ID
: Es el identificador de grupo creado en el personal. la federación de identidades. Consulta Representa a los usuarios del grupo de trabajadores en las políticas de IAM para obtener más información. sobre el identificador de grupo creado en el personal la federación de identidades. Consulta Representa a los usuarios del grupo de trabajadores en las políticas de IAM para obtener más información. acerca de laGROUP_ID
.
Verifica el registro de auditoría
Acciones de los usuarios en Google SecOps y solicitudes a la API de Google SecOps se registran como Registros de auditoría de Cloud. Para verificar que se escriban los registros, realiza sigue estos pasos:
- Ingresa a Google SecOps como un usuario con privilegios para acceder a cualquier función. Consulta Accede a Google SecOps para obtener más información.
- Realizar una acción, como realizar una búsqueda
- En la consola de Google Cloud, usa el Explorador de registros para ver los registros de auditoría en la
Proyecto de Cloud vinculado a Google SecOps. Los registros de auditoría de Google SecOps tienen la
siguiente al nombre de servicio
chronicle.googleapis.com
.
Para más información sobre cómo visualizar los Registros de auditoría de Cloud, consulta la información de los registros de auditoría de Google SecOps.
El siguiente es un ejemplo de registro escrito cuando el usuario alice@example.com
Viste la lista de extensiones de analizadores en Google SecOps.
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"authenticationInfo": {
"principalEmail": "alice@example.com"
},
"requestMetadata": {
"callerIp": "private",
"callerSuppliedUserAgent": "abc_client",
"requestAttributes": {
"time": "2023-03-27T21:09:43.897772385Z",
"reason": "8uSywAYeWhxBRiBhdXRoIFVwVGljay0-REFUIGV4Y2abcdef",
"auth": {}
},
"destinationAttributes": {}
},
"serviceName": "chronicle.googleapis.com",
"methodName": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"authorizationInfo": [
{
"resource": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"permission": "chronicle.parserExtensions.list",
"granted": true,
"resourceAttributes": {}
}
],
"resourceName": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"numResponseItems": "12",
"request": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsRequest",
"parent": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-"
},
"response": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsResponse"
}
},
"insertId": "1h0b0e0a0",
"resource": {
"type": "audited_resource",
"labels": {
"project_id": "dev-sys-server001",
"method": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"service": "chronicle.googleapis.com"
}
},
"timestamp": "2023-03-27T21:09:43.744940164Z",
"severity": "INFO",
"logName": "projects/dev-sys-server001/logs/cloudaudit.googleapis.com%2Fdata_access",
"receiveTimestamp": "2023-03-27T21:09:44.863100753Z"
}
Migra Google SecOps a IAM para el control de acceso a las funciones
Usa la información de estas secciones para migrar una SIEM existente de Google Security Operations del control de acceso basado en atributos anterior (RBAC de funciones) a IAM.
Después de migrar a IAM, también puedes auditar la actividad en la Instancia de Google SecOps con Registros de auditoría de Cloud.
Diferencias entre IAM y el RBAC de funciones
Aunque los nombres de roles predefinidos de IAM son similares al RBAC de funciones de IAM, los roles predefinidos de IAM proporcionan el mismo acceso a las funciones que los grupos originales de RBAC de funciones. Los permisos asignados a cada rol predefinido de IAM son ligeramente diferentes. Para obtener más información, consulta Cómo se asignan los permisos de IAM a cada grupo de RBAC de funciones original.
Puedes usar los roles predefinidos de Google SecOps tal como están, cambiar el definidos en cada rol predefinido, o crear roles personalizados y asignar un un conjunto diferente de permisos.
Después de migrar la instancia de Google SecOps, administrarás roles, permisos, y políticas de IAM con IAM en la consola de Google Cloud. Las siguientes páginas de la aplicación de Google SecOps se modificaron para dirigir a los usuarios a la consola de Google Cloud:
- Usuarios y Grupos
- Funciones
En RBAC de funciones, cada permiso se describe con el nombre de la función y una acción. Los permisos de IAM se describen por el nombre del recurso y método. En la siguiente tabla, se ilustra la diferencia con dos ejemplos: uno relacionado con los paneles y el segundo con feeds.
Ejemplo de panel: Para controlar el acceso a los paneles, el RBAC de funciones proporciona cinco acciones que puedes realizar en los paneles. IAM proporciona permisos similares con una adicional,
dashboards.list
, que permite a los usuarios enumerar los paneles disponibles.Ejemplo de feeds: Para controlar el acceso a los feeds, el RBAC de funciones proporciona siete acciones que puedes habilitar o inhabilitar. Con IAM, existen cuatro:
feeds.delete
,feeds.create
,feeds.update
yfeeds.view
.
Atributo | Permiso en RBAC de funciones | Permisos de IAM | Descripción de la acción del usuario |
---|---|---|---|
Paneles | Editar | chronicle.dashboards.edit |
Edita paneles |
Paneles | Copiar | chronicle.dashboards.copy |
Copiar paneles |
Paneles | Crear | chronicle.dashboards.create |
Crea paneles |
Paneles | Programar | chronicle.dashboards.schedule |
Programar informes |
Paneles | Borrar | chronicle.dashboards.delete |
Borrar informes |
Paneles | Ninguno Solo está disponible en IAM. | chronicle.dashboards.list |
Enumera los paneles disponibles |
Feeds | DeleteFeed | chronicle.feeds.delete |
Borra un feed. |
Feeds | CreateFeed | chronicle.feeds.create |
Crea un feed. |
Feeds | UpdateFeed | chronicle.feeds.update |
Actualiza un feed. |
Feeds | EnableFeed | chronicle.feeds.update |
Actualiza un feed. |
Feeds | DisableFeed | chronicle.feeds.update |
Actualiza un feed. |
Feeds | ListFeeds | chronicle.feeds.view |
Muestra uno o más feeds. |
Feeds | GetFeed | chronicle.feeds.view |
Muestra uno o más feeds. |
Pasos para migrar los permisos de control de acceso existentes
Después de completar los pasos para migrar una instancia existente de Google SecOps, también puedes migrar la configuración de control de acceso de las funciones.
Google SecOps proporciona comandos generados automáticamente que crean nuevas políticas de IAM equivalentes al RBAC basado en atributos anterior, que se configura en Google SecOps, en el Configuración del SIEM > Usuarios y grupos.
Asegúrate de tener los permisos necesarios que se describen en Configura un proyecto de Google Cloud para Google SecOps y, luego, sigue los pasos que se indican en Migra permisos y roles existentes a IAM.
Cómo se asignan los permisos de IAM a cada grupo de RBAC de funciones
En esta sección, se ilustran algunas de las diferencias en el acceso para roles predefinidos antes y después de la migración. Aunque el RBAC de funciones los nombres de los roles son similares a los roles predefinidos de IAM, a las que cada uno proporciona acceso son diferentes. En esta sección, se proporciona una introducción a algunas de estas diferencias.
Visualizador limitado de la API de Chronicle
Este rol otorga acceso de solo lectura a la aplicación de Google SecOps y a los recursos de la API,
excluyendo las reglas del motor de detección y las cazas retro. El nombre de la función es chronicle.limitedViewer
.
Este rol es nuevo. Para obtener una lista detallada de los permisos, consulta Visualizador de la API de Chronicle.
Visualizador de API de Chronicle
Este rol proporciona acceso de solo lectura a la aplicación y la API de Google SecOps.
de Google Cloud. El nombre de la función es chronicle.viewer
.
Los siguientes permisos ilustran algunas de las diferencias entre los IAM y el grupo de RBAC de las funciones Para obtener una lista detallada de los permisos, consulta Visualizador de la API de Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.get |
Viewer |
chronicle.ruleDeployments.list |
Viewer |
chronicle.rules.verifyRuleText |
Viewer |
chronicle.rules.get |
Viewer |
chronicle.rules.list |
Viewer |
chronicle.legacies.legacyGetRuleCounts |
Viewer |
chronicle.legacies.legacyGetRulesTrends |
Viewer |
chronicle.rules.listRevisions |
Viewer |
chronicle.legacies.legacyGetCuratedRulesTrends |
Viewer |
chronicle.ruleExecutionErrors.list |
Viewer |
chronicle.curatedRuleSets.get |
Viewer |
chronicle.curatedRuleSetDeployments.get |
Viewer |
chronicle.curatedRuleSets.list |
Viewer |
chronicle.curatedRuleSetDeployments.list |
Viewer |
chronicle.curatedRuleSetCategories.get |
Viewer |
chronicle.curatedRuleSetCategories.list |
Viewer |
chronicle.curatedRuleSetCategories.countAllCuratedRuleSetDetections |
Viewer |
chronicle.curatedRuleSets.countCuratedRuleSetDetections |
Viewer |
chronicle.curatedRules.get |
Viewer |
chronicle.curatedRules.list |
Viewer |
chronicle.referenceLists.list |
Viewer |
chronicle.referenceLists.get |
Viewer |
chronicle.referenceLists.verifyReferenceList |
Viewer |
chronicle.retrohunts.get |
Viewer |
chronicle.retrohunts.list |
Viewer |
chronicle.dashboards.schedule |
Editor |
chronicle.operations.get |
None. This is available in IAM only. |
chronicle.operations.list |
None. This is available in IAM only. |
chronicle.operations.wait |
None. This is available in IAM only. |
chronicle.instances.report |
None. This is available in IAM only. |
chronicle.collectors.get |
None. This is available in IAM only. |
chronicle.collectors.list |
None. This is available in IAM only. |
chronicle.forwarders.generate |
None. This is available in IAM only. |
chronicle.forwarders.get |
None. This is available in IAM only. |
chronicle.forwarders.list |
None. This is available in IAM only. |
Editor de la API de Chronicle
Este rol permite a los usuarios modificar el acceso a la aplicación y la API de Google SecOps.
de Google Cloud. El nombre de la función es chronicle.editor
.
Los siguientes permisos ilustran algunas de las diferencias entre los IAM y el grupo de RBAC de las funciones Para obtener una lista detallada de los permisos, consulta Editor de la API de Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.update |
Editor |
chronicle.rules.update |
Editor |
chronicle.rules.create |
Editor |
chronicle.referenceLists.create |
Editor |
chronicle.referenceLists.update |
Editor |
chronicle.rules.runRetrohunt |
Editor |
chronicle.retrohunts.create |
Editor |
chronicle.curatedRuleSetDeployments.batchUpdate |
Editor |
chronicle.curatedRuleSetDeployments.update |
Editor |
chronicle.dashboards.copy |
Editor |
chronicle.dashboards.edit |
Editor |
chronicle.dashboards.create |
Editor |
chronicle.legacies.legacyUpdateFinding |
Editor |
chronicle.dashboards.delete |
Editor |
chronicle.operations.delete |
None. This is available in IAM only. |
Administrador de la API de Chronicle
Este rol proporciona acceso completo a la aplicación de Google SecOps y a los servicios de la API,
incluida la configuración global. El nombre de la función es chronicle.admin
.
Los siguientes permisos ilustran algunas de las diferencias entre los IAM y el grupo de RBAC de las funciones Para obtener una lista detallada de los permisos, consulta Administrador de la API de Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.parserExtensions.delete |
Admin |
chronicle.parsers.copyPrebuiltParser |
Admin |
chronicle.extensionValidationReports.get |
Admin |
chronicle.extensionValidationReports.list |
Admin |
chronicle.validationErrors.list |
Admin |
chronicle.parsers.runParser |
Admin |
chronicle.parserExtensions.get |
Admin |
chronicle.parserExtensions.list |
Admin |
chronicle.validationReports.get |
Admin |
chronicle.parserExtensions.create |
Admin |
chronicle.parserExtensions.removeSyslog |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parserExtensions.activate |
Admin |
chronicle.parsers.activateReleaseCandidate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parserExtensions.generateKeyValuechronicle.Mappings |
Admin |
chronicle.parserExtensions.legacySubmitParserExtension |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.list |
Admin |
chronicle.parsers.create |
Admin |
chronicle.parsers.delete |
Admin |
chronicle.feeds.delete |
Admin |
chronicle.feeds.create |
Admin |
chronicle.feeds.update |
Admin |
chronicle.feeds.enable |
Admin |
chronicle.feeds.disable |
Admin |
chronicle.feeds.list |
Admin |
chronicle.feeds.get |
Admin |
chronicle.feedSourceTypeSchemas.list |
Admin |
chronicle.logTypeSchemas.list |
Admin |
chronicle.operations.cancel |
Editor |
chronicle.collectors.create |
None. This is available in IAM only. |
chronicle.collectors.delete |
None. This is available in IAM only. |
chronicle.collectors.update |
None. This is available in IAM only. |
chronicle.forwarders.create |
None. This is available in IAM only. |
chronicle.forwarders.delete |
None. This is available in IAM only. |
chronicle.forwarders.update |
None. This is available in IAM only. |
chronicle.parsingErrors.list |
None. This is available in IAM only. |