Imposta criteri di gestione delle identità e degli accessi

Data Flow richiede l'impostazione di criteri comuni in IAM (Identity and Access Management) per gestire ed eseguire le applicazioni Spark.

È possibile utilizzare i modelli di criteri in IAM oppure creare manualmente i criteri. Per ulteriori informazioni sul funzionamento dei criteri IAM, consultare la documentazione relativa a Identity and Access Management without Identity Domains o la documentazione relativa a Identity and Access Management with Identity Domains. Creare i quattro criteri seguenti:
  • criteri a livello di servizio del flusso di dati
  • criterio dataflow-admins
  • dataflow-data-engineers-policy
  • criterio dataflow-sql-users-user

Modelli criteri flusso di dati

Il flusso di dati include quattro modelli di criteri comuni. Vengono elencati nell'ordine in cui è necessario creare i criteri.

Lascia agli amministratori di Data Flow la gestione di tutte le applicazioni e le esecuzioni
Per gli utenti di tipo amministrazione (o utenti privilegiati) del servizio che possono eseguire qualsiasi azione sul servizio, inclusa la gestione delle applicazioni di proprietà di altri utenti e delle esecuzioni avviate da qualsiasi utente all'interno della propria tenancy in base ai criteri assegnati al gruppo
Lascia agli utenti di Data Flow la gestione di tutte le proprie applicazioni ed esecuzioni.
Tutti gli altri utenti autorizzati solo a creare ed eliminare le proprie applicazioni. Possono tuttavia eseguire qualsiasi applicazione all'interno della propria tenancy e non dispongono di altri diritti amministrativi, ad esempio l'eliminazione delle applicazioni di proprietà di altri utenti o l'annullamento delle esecuzioni avviate da altri utenti.
Consente al servizio Data Flow di eseguire azioni per conto dell'utente o del gruppo sugli oggetti all'interno della tenancy.
Il servizio Data Flow deve essere autorizzato a eseguire azioni per conto dell'utente o del gruppo su oggetti all'interno della tenancy.
(Facoltativo) Consentire agli utenti di Data Flow di creare, modificare o modificare endpoint privati.
Questo modello di criteri consente l'utilizzo della virtual-network-family, consente l'accesso a risorse più specifiche, consente l'accesso a operazioni specifiche e consente la modifica della configurazione di rete.

Creazione di criteri mediante i modelli di Policy Builder IAM

Utilizzare i modelli di Policy Builder IAM per creare i criteri per il flusso di dati.

Utilizzando i modelli in Policy Builder in IAM senza domini di Identity o con domini di Identity, seguire i passi per utilizzare la console per creare un criterio:
  1. Dal menu di navigazione, selezionare Identità e sicurezza.
  2. In Identità selezionare Criteri.
3. Creazione dei criteri dataflow-service-level
  1. Nella pagina Criteri, selezionare Crea criterio.
  2. Assegnare al criterio il nome dataflow-service-level-policy.
  3. (Facoltativo) Immettere una descrizione per facilitare la ricerca del criterio. Non includere informazioni riservate.
  4. Selezionare il compartimento nella radice della tenancy.
  5. In Casi d'uso dei criteri, selezionare Data Flow.
  6. In Modelli di criteri comuni, selezionare Allow Data Flow service to perform common actions on behalf of users.
    Il servizio Consenti flusso di dati del criterio per eseguire azioni comuni per conto dell'utente è selezionato e le relative istruzioni vengono visualizzate.
  7. Selezionare Crea.
4. Creazione di dataflow-admins-policy
  1. Nella pagina Criteri, selezionare Crea criterio.
  2. Assegnare al criterio il nome dataflow-admins-policy.
  3. (Facoltativo) Immettere una descrizione per facilitare la ricerca del criterio. Non includere informazioni riservate.
  4. Selezionare il compartimento nella radice della tenancy.
  5. In Casi d'uso dei criteri, selezionare Data Flow.
  6. In Modelli di criteri comuni, selezionare Let dataflow-admins perform common admin operations related to Data Flow service.
    Il criterio Consenti agli amministratori del flusso di dati di eseguire operazioni di amministrazione comuni correlate al servizio Flusso di dati è selezionato e vengono visualizzate le istruzioni dei criteri per tale servizio.
  7. Selezionare Crea.
5. Creazione di dataflow-data-engineers-policy
  1. Nella pagina Criteri, selezionare Crea criterio.
  2. Assegnare al criterio il nome dataflow-data-engineers-policy.
  3. (Facoltativo) Immettere una descrizione per facilitare la ricerca del criterio. Non includere informazioni riservate.
  4. Per Compartimento, selezionare dataflow-compartment.
  5. In Casi d'uso dei criteri, selezionare Data Flow.
  6. In Modelli di criteri comuni, selezionare Let dataflow-data-engineers perform common data engineering operations using Data Flow service.
    Il criterio Consenti ai dataflow-data-engineers di eseguire operazioni comuni di data engineering utilizzando il servizio Data Flow è selezionato e vengono visualizzate le istruzioni del criterio per esso.
  7. Selezionare Gruppi.
  8. Dall'elenco dei gruppi, selezionare dataflow-data-engineers.
  9. In Posizione, selezionare dataflow-compartment.
  10. Selezionare Crea.
6. Creazione di dataflow-sql-users-policy
  1. Nella pagina Criteri, selezionare Crea criterio.
  2. Assegnare al criterio il nome dataflow-sql-users-policy.
  3. (Facoltativo) Immettere una descrizione per facilitare la ricerca del criterio. Non includere informazioni riservate.
  4. Per Compartimento, selezionare dataflow-compartment.
  5. In Casi d'uso dei criteri, selezionare Data Flow.
  6. In Modelli di criteri comuni selezionare Let dataflow-sql-users read and connect to Data Flow Interactive SQL clusters via JDBC or ODBC.
    Il criterio Consenti a dataflow-SQL-users di leggere e connettersi ai cluster SQL interattivi di Data Flow tramite JDBC o ODBC è selezionato e vengono visualizzate le relative istruzioni.
  7. Selezionare Gruppi.
  8. Dall'elenco dei gruppi, selezionare dataflow-sql-users.
  9. In Posizione, selezionare dataflow-compartment.
  10. Selezionare Crea.

Crea criteri manualmente

Anziché utilizzare i modelli in IAM per creare i criteri per il flusso di dati, è possibile crearli personalmente in IAM Policy Builder.

Attenersi alla procedura descritta in Gestione dei criteri in IAM con i domini di Identity o senza i domini di Identity per creare manualmente i criteri riportati di seguito.

Criteri utente flusso dati
Come procedura generale, suddividere gli utenti del flusso di dati in due gruppi per una chiara separazione di autorità:
  • Per gli utenti (o gli utenti privilegiati) di tipo amministrativo del servizio che possono eseguire qualsiasi azione sul servizio, inclusa la gestione delle applicazioni di proprietà di altri utenti e delle esecuzioni avviate da qualsiasi utente all'interno della propria tenancy in base ai criteri assegnati al gruppo:
    • Creare un gruppo nel servizio di identità denominato dataflow-admin e aggiungere utenti a questo gruppo.
    • Creare un criterio denominato dataflow-admin e aggiungere le istruzioni seguenti:
      ALLOW GROUP dataflow-admin TO READ buckets IN <TENANCY>
      ALLOW GROUP dataflow-admin TO MANAGE dataflow-family IN <TENANCY>
      ALLOW GROUP dataflow-admin TO MANAGE objects IN <TENANCY> WHERE ALL
                {target.bucket.name='dataflow-logs', any {request.permission='OBJECT_CREATE',
                request.permission='OBJECT_INSPECT'}}
    Include l'accesso al bucket dataflow-logs.
  • La seconda categoria è riservata a tutti gli altri utenti autorizzati solo a creare ed eliminare le proprie applicazioni. Possono tuttavia eseguire qualsiasi applicazione all'interno della propria tenancy e non dispongono di altri diritti amministrativi, ad esempio l'eliminazione delle applicazioni di proprietà di altri utenti o l'annullamento delle esecuzioni avviate da altri utenti.
    • Creare un gruppo nel servizio di identità denominato dataflow-users e aggiungere utenti a questo gruppo.
    • Creare un criterio denominato dataflow-users e aggiungere le istruzioni seguenti:
      ALLOW GROUP dataflow-users TO READ buckets IN <TENANCY>
      ALLOW GROUP dataflow-users TO USE dataflow-family IN <TENANCY>
      ALLOW GROUP dataflow-users TO MANAGE dataflow-family IN <TENANCY> WHERE ANY 
      {request.user.id = target.user.id, request.permission = 'DATAFLOW_APPLICATION_CREATE', 
      request.permission = 'DATAFLOW_RUN_CREATE'}
      ALLOW GROUP dataflow-users TO MANAGE objects IN <TENANCY> WHERE ALL 
      {target.bucket.name='dataflow-logs', any {request.permission='OBJECT_CREATE', 
      request.permission='OBJECT_INSPECT'}}
Criteri di Oracle Cloud Infrastructure Logging

Questi criteri ti consentono di utilizzare Oracle Cloud Infrastructure Logging con Data Flow.

Per abilitare i log del servizio, è necessario concedere all'utente l'accesso di gestione al gruppo di log e l'accesso alla risorsa. I log e i gruppi di log utilizzano il tipo di risorsa log-group, ma per cercare il contenuto dei log, è necessario utilizzare il tipo di risorsa log-content. Aggiungere i criteri seguenti:
allow group dataflow-users to manage log-groups in compartment <compartment_name>
allow group dataflow-users to manage log-content in compartment <compartment_name>

Impostazione di un criterio per lo streaming Spark

Per utilizzare lo streaming Spark con Data Flow, sono necessari più criteri comuni.

È necessario aver creato i criteri comuni utilizzando i modelli di IAM Policy Builder o manualmente.

Puoi utilizzare la Costruzione guidata criteri IAM per gestire l'accesso alle origini e distribuire le applicazioni di streaming da o in cui vengono prodotte. Ad esempio, il pool di flussi specifico o il bucket di storage degli oggetti specifico che si trovano in una posizione selezionata. In alternativa, è possibile effettuare le operazioni riportate di seguito per creare manualmente un criterio.

  1. Creare un criterio denominato dataflow-streaming-policy nella radice della tenancy.
  2. Aggiungere le istruzioni seguenti per consentire alle esecuzioni di flussi di dati dal compartimento dataflow-compartment di utilizzare o produrre da un pool di flussi specifico. Il pool di flussi ha un ID stream-pool-ocid1 e un bucket di storage degli oggetti denominato stream-bucket-1.
    ALLOW ANY-USER TO {STREAM_INSPECT, STREAM_READ, STREAM_CONSUME, STREAM_PRODUCE} IN TENANCY WHERE ALL
    {request.principal.type='dataflowrun', request.resource.compartment.id = '<compartment_id>', target.streampool.id = 'stream-pool-ocid1'}
    ALLOW ANY-USER TO MANAGE OBJECTS IN TENANCY WHERE ALL 
    {request.principal.type='dataflowrun', request.resource.compartment.id = '<compartment_id>', target.bucket.name = '<bucket_name>'}