Nota

Centralizza i log da più tenancy di Oracle Cloud Infrastructure in un bucket tenancy centrale di Oracle Cloud Infrastructure

Introduzione

In alcuni casi, è necessario centralizzare tutti i log in un'unica posizione, anche se provengono da tenancy diverse. Potrebbe essere dovuto alle normative del settore o alle politiche governative aziendali; qualunque sia il tuo caso, puoi affrontare diverse preoccupazioni di gestione per raggiungere questo obiettivo.

In questa esercitazione centralizzeremo i log di audit, servizio o personalizzati generati in diverse tenancy Oracle Cloud Infrastructure (OCI), in una tenancy centrale con scopi di archiviazione o visualizzazione, utilizzando l'accesso cross tenancy OCI e il servizio OCI Connector Hub.

Diagramma dell'architettura

Diagramma di architettura.

Nota: per questa esercitazione, tutte le tenancy devono trovarsi nella stessa area.

Obiettivi

Prerequisiti

Task 1: creare criteri nella tenancy di destinazione

I criteri IAM OCI seguenti verranno configurati nella tenancy di destinazione (Tenancy C), dove risiede il bucket di storage degli oggetti OCI.

  1. Recuperare le seguenti informazioni per Tenancy A.

    • OCID
    • OCID compartimento, in cui verrà distribuito OCI Connector Hub.
  2. Recuperare le seguenti informazioni per Tenancy C.

    • Nome del compartimento, in cui è stato creato il bucket.
  3. Creare i criteri riportati di seguito con le informazioni raccolte nei passi 1 e 2.

    • Definire la tenancy remota.

      define tenancy SCTenancyA as <Tenancy A OCID>
      

      Nota: aggiornare <Tenancy A OCID> con le informazioni raccolte nel passo 1.

    • Consentire a un principal del connettore del servizio della tenancy remota di leggere i bucket in un compartimento locale.

      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: aggiornare <Tenancy C Compartment name> e <Tenancy A Compartment OCID> con le informazioni corrispondenti.

    • Consente al principal del connettore del servizio della tenancy remota di gestire gli oggetti, limitato alle azioni di ispezione e creazione degli oggetti, in un bucket locale.

      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:

      • Aggiornare <Tenancy C Compartment name> e <Tenancy A Compartment OCID> con le informazioni corrispondenti.
      • Tutte le risorse si trovano nell'ambito di un compartimento di origine o di destinazione. Per ulteriori informazioni su Gira, ammetti e definisci rendiconti, vedere Approva, ammetti e definisci rendiconti.
  4. Eseguire il login a OCI Console, passare a Identità e sicurezza e fare clic su Criteri.

  5. Assicurarsi di trovarsi nel compartimento radice e fare clic su Crea criterio.

  6. Immettere Nome, Descrizione e fare clic su Mostra editor manuale.

  7. Scrivere i criteri creati nel task 1.3 e fare clic su Crea.

I criteri devono avere il seguente aspetto:

Policies_destination.

Task 2: Creare criteri nella tenancy di origine

I criteri IAM OCI seguenti devono essere configurati in ogni tenancy di origine (tenancy A e tenancy B), in cui verrà distribuito un hub connettore OCI. OCI Connector Hub raccoglierà e invierà i log al repository centrale.

  1. Recuperare le seguenti informazioni per Tenancy A.

    • OCID compartimento, in cui verrà distribuito OCI Connector Hub.
  2. Recuperare le seguenti informazioni per Tenancy C.

    • OCID
  3. Creare i criteri riportati di seguito con le informazioni raccolte nei passi 1 e 2.

    • Definire la tenancy remota.

      Define tenancy OSTenancyC as <Tenancy C OCID>
      

      Nota: aggiornare <Tenancy C OCID> con le informazioni corrispondenti.

    • Consentire a un principal del connettore del servizio della tenancy locale di leggere i bucket in una tenancy di destinazione.

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

      Nota: aggiornare <Tenancy A Compartment OCID> con le informazioni corrispondenti.

    • Consente al principal del connettore servizio della tenancy locale di gestire gli oggetti, limitato alle azioni di ispezione e creazione degli oggetti, nella tenancy di destinazione.

      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:

      • Aggiornare <Tenancy A Compartment OCID> con le informazioni corrispondenti.
      • Tutte le risorse si trovano nell'ambito di un compartimento di origine o di destinazione. Per ulteriori informazioni su dichiarazioni di approvazione, ammissione e definizione, vedere Approvazione, ammissione e definizione di dichiarazioni.
  4. Eseguire il login a OCI Console, passare a Identità e sicurezza e fare clic su Criteri.

  5. Assicurarsi di trovarsi nel compartimento radice e fare clic su Crea criterio.

  6. Immettere Nome, Descrizione e fare clic su Mostra editor manuale.

  7. Immettere i criteri preparati nel task 2.3 e fare clic su Crea.

I criteri devono avere il seguente aspetto:

Policies_source.

Task 3: distribuire un hub connettore OCI nella tenancy di origine

Distribuire l'hub connettore OCI nelle tenancy di origine (tenancy A e tenancy B), utilizzando l'interfaccia CLI OCI.

Nota: per creare un connettore che accede alle risorse in altre tenancy, è necessario utilizzare l'SDK, l'interfaccia CLI o l'API OCI.

  1. Connettersi all'interfaccia CLI OCI della tenancy di origine (tenancy A e tenancy B). Per questa esercitazione verrà utilizzata OCI Cloud Shell. Per ulteriori informazioni sull'uso di OCI Cloud Shell, vedere Uso di Cloud Shell.

  2. Creare due file con il contenuto seguente, denominato source.json e target.json.

    • source.json: definirà l'origine o le origini log dalla tenancy di origine (tenancy A o tenancy B), in cui verranno raccolti i log.

      Aggiornare i seguenti parametri con i valori nel codice di esempio.

      • <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: l'esempio source.json riportato sopra contiene due origini log: la prima configurerà l'hub connettore OCI per raccogliere i log di audit dal compartimento radice e da tutti i compartimenti secondari. La seconda configurerà l'hub connettore OCI per raccogliere log specifici da un gruppo di log (definito da log-id e log-group-id), ad esempio un log di subnet. È possibile aggiungere o rimuovere origini log da questa configurazione, in base alle esigenze.

    • Target.json: definirà il bucket nella tenancy di destinazione (Tenancy C), in cui i log verranno archiviati.

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

      Nota: è possibile ottenere lo spazio di nomi del bucket dai dettagli del bucket.

  3. eseguire il comando seguente.

    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: i file source.json e target.json devono essere accessibili.

    Connector_deployment.

  4. Ripetere i passi da 1 a 3 per tutte le altre tenancy di origine in base alle esigenze. Per ulteriori opzioni di destinazione dell'hub connettore OCI, puoi consultare il riferimento ObjectStorageTargetDetails.

  5. Controllare i risultati.

    • Verrà creato un hub connettore OCI nella tenancy di origine con le origini definite e il bucket di destinazione.

      Connector_console.

    • Il bucket di destinazione conterrà una voce per ogni hub connettore OCI.

      Bucket_Content.

Conferme

Altre risorse di apprendimento

Esplora altri laboratori su docs.oracle.com/learn o accedi a più contenuti gratuiti sulla formazione su Oracle Learning YouTube channel. Inoltre, visita education.oracle.com/learning-explorer per diventare un Oracle Learning Explorer.

Per la documentazione del prodotto, visita l'Oracle Help Center.