Note:

Centralización de logs de varios arrendamientos de Oracle Cloud Infrastructure en un cubo de arrendamiento central de Oracle Cloud Infrastructure

Introducción

Hay algunos casos en los que debe centralizar todos los logs en un solo lugar, incluso si proceden de distintos arrendamientos. Podría deberse a regulaciones de la industria o políticas gubernamentales de la empresa; cualquiera que sea su caso, puede enfrentar diferentes preocupaciones de gestión para lograr esto.

En este tutorial, centralizaremos los logs de auditoría, servicio o personalizados generados en diferentes arrendamientos de Oracle Cloud Infrastructure (OCI), en un arrendamiento central con fines de archivado o visualización, mediante el acceso entre arrendamientos de OCI y el servicio OCI Connector Hub.

Diagrama de arquitectura

Diagrama de arquitectura.

Nota: Para este tutorial, todos los arrendamientos deben estar en la misma región.

Objetivos

Requisitos

Tarea 1: Creación de políticas en el arrendamiento de destino

Las siguientes políticas de OCI IAM se configurarán en el arrendamiento de destino (arrendamiento C), donde reside el cubo de OCI Object Storage.

  1. Recupere la siguiente información para el arrendamiento A.

    • OCID
    • OCID de compartimento, donde se desplegará el hub de conector de OCI.
  2. Recupere la siguiente información para el arrendamiento C.

    • Nombre del compartimento, donde se ha creado el cubo.
  3. Cree las siguientes políticas con la información recopilada en los pasos 1 y 2.

    • Defina el arrendamiento remoto.

      define tenancy SCTenancyA as <Tenancy A OCID>
      

      Nota: Actualice <Tenancy A OCID> con la información recopilada en el paso 1.

    • Permitir que un principal de conector de servicio del arrendamiento remoto lea cubos en un compartimento local.

      admit any-user of tenancy SCTenancyA to read buckets in compartment <Tenancy C Compartment name> where all { request.principal.type='serviceconnector', request.principal.compartment.id='<Tenancy A Compartment OCID>' }
      

      Nota: Actualice <Tenancy C Compartment name> y <Tenancy A Compartment OCID> con la información correspondiente.

    • Permitir que un principal de conector de servicio del arrendamiento remoto gestione objetos, restringidos a acciones de creación de objetos e inspección de objetos, en un cubo local.

      admit any-user of tenancy SCTenancyA to manage objects in compartment <Tenancy C Compartment name> where all { request.principal.type='serviceconnector', request.principal.compartment.id=’ <Tenancy A Compartment OCID>' , any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT'}}
      

      Nota:

      • Actualice <Tenancy C Compartment name> y <Tenancy A Compartment OCID> con la información correspondiente.
      • Todos los recursos se encuentran en el ámbito de un compartimento de origen o destino. Para obtener más información sobre las sentencias de aprobación, admisión y definición, consulte Sentencias de aprobación, admisión y definición.
  4. Conéctese a la consola de OCI, vaya a Identidad y seguridad y haga clic en Políticas.

  5. Asegúrese de que está en el compartimento raíz y haga clic en Crear política.

  6. Introduzca Nombre, Descripción y haga clic en Mostrar editor manual.

  7. Escriba las políticas creadas en la tarea 1.3 y haga clic en Crear.

Las políticas deben ser similares a:

Policies_destination.

Tarea 2: Creación de políticas en el arrendamiento de origen

Las siguientes políticas de OCI IAM se deben configurar en cada arrendamiento de origen (arrendamiento A y arrendamiento B), donde se desplegará un hub de conector de OCI. El hub de conector de OCI recopilará y enviará los logs al repositorio central.

  1. Recupere la siguiente información para el arrendamiento A.

    • OCID de compartimento, donde se desplegará el hub de conector de OCI.
  2. Recupere la siguiente información para el arrendamiento C.

    • OCID
  3. Cree las siguientes políticas con la información recopilada en los pasos 1 y 2.

    • Defina el arrendamiento remoto.

      Define tenancy OSTenancyC as <Tenancy C OCID>
      

      Nota: Actualice <Tenancy C OCID> con la información correspondiente.

    • Permitir que un principal de conector de servicio del arrendamiento local lea cubos en un arrendamiento de destino.

      endorse any-user to read buckets in tenancy OSTenancyC where all {request.principal.type = 'serviceconnector', request.principal.compartment.id='<Tenancy A Compartment OCID>' }
      

      Nota: Actualice <Tenancy A Compartment OCID> con la información correspondiente.

    • Permitir que un principal de conector de servicio del arrendamiento local gestione objetos, restringidos a acciones de creación de objetos e inspección de objetos, en el arrendamiento de destino.

      endorse any-user to manage objects in tenancy OSTenancyC where all {request.principal.type = 'serviceconnector', request.principal.compartment.id='<Tenancy A Compartment OCID>' , any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT'}}
      

      Nota:

      • Actualice <Tenancy A Compartment OCID> con la información correspondiente.
      • Todos los recursos se encuentran en el ámbito de un compartimento de origen o destino. Para obtener más información sobre las sentencias de aprobación, admisión y definición, consulte Sentencias de aprobación, admisión y definición
  4. Conéctese a la consola de OCI, vaya a Identidad y seguridad y haga clic en Políticas.

  5. Asegúrese de que está en el compartimento raíz y haga clic en Crear política.

  6. Introduzca Nombre, Descripción y haga clic en Mostrar editor manual.

  7. Introduzca las políticas preparadas en la tarea 2.3 y haga clic en Crear.

Las políticas deben ser similares a:

Policies_source.

Tarea 3: Despliegue de un hub de conector de OCI en el arrendamiento de origen

Despliegue el hub de conector de OCI en los arrendamientos de origen (arrendamiento A y arrendamiento B), mediante la CLI de OCI.

Nota: Para crear un conector que acceda a recursos de otros arrendamientos, debe utilizar el SDK, la CLI o la API de OCI.

  1. Conéctese a la CLI de OCI del arrendamiento de origen (arrendamiento A y arrendamiento B). Para este tutorial, utilizaremos OCI Cloud Shell. Para obtener más información sobre cómo utilizar OCI Cloud Shell, consulte Uso de Cloud Shell.

  2. Cree dos archivos con el siguiente contenido, denominado source.json y target.json.

    • source.json: definirá los orígenes de log del arrendamiento de origen (arrendamiento A o arrendamiento B), donde se recopilarán los logs.

      Actualice los siguientes parámetros con los valores en el código de ejemplo.

      • <Tenancy A OCID where Audit log resides>
      • <Tenancy A Compartment OCID where log group resides>
      • <Tenancy A Log Group OCID>
      • <Tenancy A _Log-ID OCID_>
      {
      
      "kind": "logging",
      
      "logSources": [
      
      					{
      
      					"compartment-id": "_<Tenancy A OCID where Audit log resides>_",
      
      					"log-group-id": "_Audit_Include_Subcompartment",
      
      					"log-id": null
      
      					},
      
      					{
      
      					"compartment-id": "_<Tenancy A Compartment OCID where log group resides>_",
      
      					"log-group-id": _"<Tenancy A Log Group OCID>",_
      
      					"log-id": "<Tenancy A _Log-ID OCID_>"
      
      					}
      
      				]
      
      }
      

      Nota: El ejemplo source.json anterior tiene dos orígenes de log: el primero configurará el hub de conector de OCI para recopilar logs de auditoría del compartimento raíz y de todos los subcompartimentos. El segundo configurará el hub de conector de OCI para recopilar logs específicos de un grupo de logs (definido por log-id y log-group-id), como un log de subred. Puede agregar o eliminar orígenes de log de esta configuración, según sea necesario.

    • Target.json: definirá el cubo en el arrendamiento de destino (arrendamiento C), donde se archivarán los logs.

      {
      			"kind": "objectStorage",
      			"bucketName": "<Tenancy C bucket name>",
      			"namespace": "<Tenancy C namespace where bucket was created>"
      }
      

      Nota: Puede obtener el espacio de nombres del cubo a partir del detalle del cubo.

  3. Ejecute el siguiente comando.

    oci sch service-connector create --compartment-id <Compartment OCID where SCH will be placed in Tenancy A> --display-name <Display name> --source file://Source.json --target file://Target.json
    

    Nota: Los archivos source.json y target.json deben ser accesibles.

    Connector_deployment.

  4. Repita los pasos del 1 al 3 para todos los demás arrendamientos de origen según sea necesario. Para obtener más opciones de destino del hub de conector de OCI, consulte la Referencia de ObjectStorageTargetDetails.

  5. Compruebe los resultados.

    • Tendrá un hub de conector de OCI creado en el arrendamiento de origen con los orígenes definidos y el cubo de destino.

      Connector_console.

    • El cubo de destino contendrá una entrada para cada hub de conector de OCI.

      Bucket_Content.

Agradecimientos

Más recursos de aprendizaje

Explore otros laboratorios en docs.oracle.com/learn o acceda a más contenido de aprendizaje gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en Oracle Learning Explorer.

Para obtener documentación sobre el producto, visite Oracle Help Center.