Acesso ao Armazenamento de Objetos entre Tenancies

Os Pontos Finais SQL do serviço Data Flow podem acessar o armazenamento de objetos entre tenancies. Eles podem fazer algo em uma tenancy diferente daquela em que existem.

Você tem um Ponto Final SQL do serviço Data Flow em uma tenancy ao ler objetos armazenados em uma segunda tenancy. Você deve aplicar políticas em cada tenancy adequadamente. Por exemplo:
  • Seu Ponto Final SQL é dataflow-sample-endpoint em uma tenancy, Tenancy-A.
  • Os objetos a serem lidos estão em uma tenancy chamada Tenancy-B, e o índice dos objetos é criado no mesmo bucket.
Permita que tenancy-a-group leia buckets e objetos em Tenancy-B:
  1. Aplique as seguintes políticas no compartimento raiz de Tenancy-A:
    define tenancy Tenancy-B as tenancy-b-ocid
    endorse any-user to read buckets in tenancy Tenancy-B where ALL {request.principal.type='dataflowsqlendpoint',request.principal.id = '<dataflow-sample-endpoint-ocid>'}
    endorse any-user to manage objects in tenancy Tenancy-B where ALL {request.principal.type='dataflowsqlendpoint',request.principal.id = '<dataflow-sample-endpoint-ocid>'}
    endorse any-user to read object-family in tenancy Tenancy-B where ALL {request.principal.type='datacatalogmetastore'}

    A primeira instrução é define, que designa um label simples ao OCID de Tenancy-B. A segunda e a terceira instruções permitem que dataflow-sample-endpoint leia buckets e gerencie objetos em Tenancy-B. A última instrução permite que o metastore leia objetos em Tenancy-B.

  2. Aplique estas políticas no compartimento raiz de Tenancy-B:
    define tenancy Tenancy_A as tenancy-a-ocid
    admit any-user of tenancy Tenancy-A to read buckets in compartment <compartment> where ALL {request.principal.type='dataflowsqlendpoint',request.principal.id = '<dataflow-sample-endpoint-ocid>'}
    admit any-user of tenancy Tenancy-A to manage objects in compartment <compartment> Tenancy-B where ALL {request.principal.type='dataflowsqlendpoint',request.principal.id = '<dataflow-sample-endpoint-ocid>'}
    admit any-user of tenancy Tenancy-A to read object-family in compartment <compartment> where ALL {request.principal.type='datacatalogmetastore'}

    A primeira instrução é definida que designa um label simples ao OCID da Tenancy-A. A segunda e a terceira instruções permitem que o dataflow-sample-endpoint leia os buckets e gerencie objetos na Tenancy-B. A última instrução permite que o metastore leia objetos na Tenancy-B. A palavra 'admit' indica que o acesso se aplica a um ponto final de amostra de fluxo de dados fora da tenancy em que residem os buckets e os objetos.

    Você pode limitar ainda mais, limitando a política de objetos gerenciados a um bucket. Por exemplo, limite-se a um bucket chamado your-bucket em your-compartment:

    admit any-user of tenancy Tenancy-A to manage objects in compartment your-compartment Tenancy-B where ALL {target.bucket.name = 'your-bucket', request.principal.type='dataflowsqlendpoint',request.principal.id = '<dataflow-sample-endpoint-ocid>'}