Protegendo o Connector Hub

Este tópico fornece informações e recomendações de segurança para o serviço Oracle Cloud Infrastructure Connector Hub.

Responsabilidades de Segurança

Para usar o Connector Hub de forma segura, saiba mais sobre suas responsabilidades de segurança e conformidade.

Em geral, a Oracle oferece segurança de operações e infraestrutura de nuvem, como controles de acesso do operador de nuvem e aplicação de patches de segurança de infraestrutura. Você é responsável por configurar com segurança seus recursos de nuvem. A segurança na nuvem é uma responsabilidade compartilhada entre você e a Oracle.

A Oracle é responsável pelos seguintes requisitos de segurança:

  • Segurança Física: A Oracle é responsável por proteger a infraestrutura global que executa todos os serviços oferecidos no Oracle Cloud Infrastructure. Essa infraestrutura consiste no hardware, software, rede e instalação usados para executar serviços do Oracle Cloud Infrastructure.

Suas responsabilidades de segurança estão descritas nesta página, que incluem as seguintes áreas:

  • Controle de Acesso: Limite o máximo de privilégios possível. Os usuários devem receber apenas o acesso necessário para executar seu trabalho.

Tarefas de Segurança Inicial

Use esta lista de verificação para identificar as tarefas que você executa para proteger o Connector Hub em uma nova tenancy do Oracle Cloud Infrastructure.

Tarefa Mais Informações
Usar políticas do IAM para conceder acesso a usuários e recursos Políticas do IAM

Tarefas de Segurança da Rotina

Após começar a usar o Connector Hub, o usa esta lista de verificação para identificar as tarefas de segurança que recomendamos que você execute regularmente.

O Connector Hub não tem tarefas de segurança que você precisa executar regularmente.

Políticas do serviço IAM

Use políticas para limitar o acesso ao Connector Hub.

Uma política especifica quem pode acessar os recursos do Oracle Cloud Infrastructure e como. Para obter mais informações, consulte Como as Políticas Funcionam.

Atribua a um grupo o mínimo de privilégios necessários para executar suas responsabilidades. Cada política tem um verbo que descreve quais ações o grupo pode executar. Na menor quantidade de acesso à maioria, os verbos disponíveis são: inspect, read, use e manage.

Políticas de Acesso do Usuário

Crie esta política para permitir que o grupo ConnectorUsers crie, atualize e exclua conectores no compartimento ABC.

Allow group ConnectorUsers to manage serviceconnectors in compartment ABC

Crie esta política para permitir que o grupo ConnectorUsers atualize somente conectores (não permitindo que o grupo crie ou exclua conectores) no compartimento ABC.

Allow group ConnectorUsers to use serviceconnectors in compartment ABC

Para obter mais informações sobre políticas do Connector Hub, consulte Detalhes do Connector Hub.

Políticas de Acesso ao Serviço

Observação

Certifique-se de que qualquer política criada esteja de acordo com as diretrizes da sua empresa.

Para mover dados, seu conector deve ter autorização para acessar os recursos especificados nos serviços de fonte , task e destino . Alguns recursos podem ser acessados sem políticas. As políticas padrão que fornecem a autorização necessária são oferecidas quando você usa a Console para definir um conector. Essas políticas são limitadas ao contexto do conector. Você pode aceitar as políticas padrão ou garantir que tenha as autorizações apropriadas em políticas personalizadas para acesso de usuário e serviço.

Por exemplo, a política padrão a seguir é oferecida quando você cria ou edita um conector que move dados do serviço Logging para o serviço Monitoring.

allow any-user to use metrics in compartment id <target_metric_compartment_OCID>
where all {
    request.principal.type='serviceconnector',
    target.metrics.namespace='<metric_namespace>',
    request.principal.compartment.id='<serviceconnector_compartment_OCID>'
}

Para obter mais informações, incluindo políticas padrão, consulte Acesso a Serviços de Origem, Tarefa e Destino.

Acesso ao Conector entre Tenancies

Use o acesso do conector entre tenancies para compartilhar conectores com outra organização que tenha sua própria tenancy. Por exemplo, compartilhe conectores com outra unidade de negócios da sua empresa, um cliente ou uma empresa que fornece serviços para sua empresa.

Observação

Para criar um conector que acesse recursos em outras tenancies, use o SDK, a CLI ou a API do OCI. (O criador de políticas na Console não fornece informações de outras tenancies nem sugere instruções Endossar, Admitir ou Definir.) Para obter instruções sobre CLI e API, consulte Criando um Conector.

Para acessar e compartilhar recursos, os administradores de ambas as tenancies precisam criar instruções de política especiais que declarem explicitamente os recursos que podem ser acessados e compartilhados. Essas instruções especiais usam as palavras Define, Endorse e Admit. Para obter mais informações sobre essas instruções, consulte Endossar, Admitir e Definir Instruções (na página "Acessando Recursos do Serviço Object Storage entre Tenancies").

Instruções da Política da Tenancy de Origem

Use uma instrução de política na tenancy de origem para:

  • Admitir um conector de uma tenancy de destino para acessar recursos na tenancy (de origem)
  • Endossar um conector para acessar recursos na tenancy de destino
  • Endossar um grupo para acessar recursos na tenancy de destino
Observação

Os exemplos de instruções de política a seguir são formatados para facilitar a leitura. Antes de usar cópias dessas instruções, remova novas linhas, guias e espaços.
Admita qualquer conector da tenancy de destino para acessar um tipo específico de recurso na tenancy (de origem)
Define tenancy DestinationTenancy as <destination_tenancy_OCID>
Admit any-user of tenancy DestinationTenancy to <permissions_for_resource_kind> in compartment id <compartment_OCID_in_source_tenancy>
    where all 
    { 
        request.principal.type='serviceconnector', 
        request.principal.compartment.id=<compartment_OCID_in_destination_tenancy>' 
    }
Para obter exemplos, consulte Exemplos. Para localizar as permissões necessárias para um tipo específico de recurso acessado por um conector, consulte Políticas Padrão.
Endossar um grupo em sua tenancy (de origem) para fazer qualquer coisa com qualquer conector em qualquer tenancy
Endorse group <group_name> to manage serviceconnectors in any-tenancy
Endossar um grupo em sua tenancy (de origem) para fazer qualquer coisa com qualquer conector somente na tenancy de destino

Para gravar uma política que reduz o escopo do acesso da tenancy, o administrador de origem deve fazer referência ao OCID da tenancy de destino fornecido pelo administrador de destino.

Define tenancy DestinationTenancy as <destination_tenancy_OCID>
Endorse group <group_name> to read serviceconnectors in tenancy DestinationTenancy

Instruções da Política da Tenancy de Destino

Use uma instrução de política na tenancy de destino para:

  • Endossar um conector para acessar recursos na tenancy de origem
  • Admita um conector da tenancy de origem para acessar recursos na tenancy (de destino)
  • Admita um grupo ou grupo dinâmico da tenancy de origem para acessar recursos na tenancy (de destino)
Observação

Os exemplos de instruções de política a seguir são formatados para facilitar a leitura. Antes de usar cópias dessas instruções, remova novas linhas, guias e espaços.
Endossar qualquer conector em sua tenancy (de destino) para acessar um tipo específico de recurso na tenancy de origem
Define tenancy SourceTenancy as <source_tenancy_OCID>
Endorse any-user to <permissions_for_resource_kind> in tenancy SourceTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Para obter exemplos, consulte Exemplos. Para localizar as permissões necessárias para um tipo específico de recurso acessado por um conector, consulte Políticas Padrão.
Admitir que um grupo da tenancy de origem faça qualquer coisa com qualquer conector na tenancy (de destino)
Define tenancy SourceTenancy as <source_tenancy_OCID>
Define group <group_name> as <group_OCID>
Admit group <group_name> of tenancy SourceTenancy to manage serviceconnectors 
    in tenancy
Admita um grupo da tenancy de origem para ler conectores somente no compartimento SharedConnectors (na tenancy de destino)
Define tenancy SourceTenancy as <source_tenancy_OCID>
Define group <group_name> as <group_OCID>
Admit group <group_name> of tenancy SourceTenancy to read serviceconnectors 
    in compartment SharedConnectors
Admita um grupo dinâmico da tenancy de origem para ler conectores somente no compartimento SharedConnectors (na tenancy de destino)
Define tenancy SourceTenancy as <source_tenancy_OCID>
Define dynamic-group <dynamic_group_name> as <group_OCID>
Admit dynamic-group <dynamic_group_name> of tenancy SourceTenancy to read serviceconnectors 
    in compartment SharedConnectors
Para localizar as permissões necessárias para um tipo específico de recurso acessado por um grupo dinâmico, consulte Políticas Personalizadas.

Exemplos

Observação

  • Crie políticas entre tenancies antes de criar o conector. Use o SDK, a CLI ou a API do OCI para criar um conector entre tenancies.
  • Os exemplos a seguir de instruções de política são formatados para facilitar a leitura. Antes de usar cópias dessas instruções, remova novas linhas, guias e espaços.
  • Para endossar ou admitir um conector para acesso a um recurso de origem, destino ou tarefa que não seja abordado nesses exemplos, use as permissões de recurso nas políticas padrão.
Origem do Fluxo em Outra Tenancy

Crie políticas para um conector para mover dados de um fluxo em outra tenancy para um bucket na tenancy do conector.


Origem do fluxo em outra tenancy
Callout Descrição
2 Fluxo usado como origem do conector
2 Conector que move dados do fluxo para o bucket
3 Bucket usado como destino do conector

Veja a seguir as políticas para mover esses dados do fluxo na Tenancy A para o bucket na Tenancy B, usando o conector na Tenancy B.

Tenancy A
Admita qualquer conector no compartimento especificado da Tenancy B para acessar qualquer stream no compartimento especificado dessa tenancy.
Define tenancy ConnectorTenancy as <tenancy_b_OCID>
Admit any-user of tenancy ConnectorTenancy to {STREAM_READ, STREAM_CONSUME} in compartment id <compartment_OCID_in_tenancy_a>
    where all 
    { 
        request.principal.type='serviceconnector', 
        request.principal.compartment.id=<compartment_OCID_in_tenancy_b>' 
    }
Tenancy B
Endossar qualquer conector nesta tenancy para acessar qualquer fluxo na Tenancy A.
Define tenancy StreamTenancy as <tenancy_a_OCID>
Endorse any-user to {STREAM_READ, STREAM_CONSUME} in tenancy StreamTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Permita que qualquer conector no compartimento especificado dessa tenancy mova dados para o bucket (mesma tenancy).
Allow any-user to manage objects in compartment id <target_bucket_compartment_OCID> 
    where all {
        request.principal.type='serviceconnector',
        target.bucket.name='<bucket_name>',          
        request.principal.compartment.id='<serviceconnector_compartment_OCID>'
    }
Origem de Log em Outra Tenancy

Gravar políticas para um conector para mover dados de um log em outra tenancy para um grupo de logs na tenancy do conector.


Origem de log em outra tenancy
Callout Descrição
2 Log usado como origem do conector
2 Conector que move dados do log para o grupo de logs
3 Grupo de logs usado como destino do conector
Tenancy A
Admita qualquer conector no compartimento especificado da Tenancy B para acessar qualquer log no compartimento especificado dessa tenancy.
Define tenancy ConnectorTenancy as <tenancy_b_OCID>
Admit any-user of tenancy ConnectorTenancy to read log-content in compartment id <compartment_OCID_in_tenancy_a>
    where all 
    { 
        request.principal.type='serviceconnector', 
        request.principal.compartment.id=<compartment_OCID_in_tenancy_b>' 
    }
Tenancy B
Endossar qualquer conector nesta tenancy para acessar qualquer log na Tenancy A.
Define tenancy LogTenancy as <tenancy_a_OCID>
Endorse any-user to read log-content in tenancy LogTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Permita que qualquer conector no compartimento especificado desta tenancy mova dados para o grupo de logs (mesma tenancy).
Allow any-user to use loganalytics-log-group in compartment id <target_log_group_compartment_OCID> 
    where all {
        request.principal.type='serviceconnector', 
        target.loganalytics-log-group.id=<log_group_OCID>, 
        request.principal.compartment.id=<serviceconnector_compartment_OCID>
    }
Destino da Função em Outra Tenancy

Gravar políticas para um conector para mover dados de um log na tenancy do conector para uma função em outra tenancy.


Destino da função em outra tenancy
Callout Descrição
2 Log usado como origem do conector
2 Conector que move dados do log para a função
3 Função usada como destino do conector
Tenancy A
Endossar qualquer conector no compartimento especificado desta tenancy para acessar qualquer função no compartimento especificado da Tenancy B.
Define tenancy FunctionTenancy as <tenancy_b_OCID>
Endorse any-user to use fn-function in tenancy FunctionTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Define tenancy FunctionTenancy as <tenancy_b_OCID>
Endorse any-user to use fn-invocation in tenancy FunctionTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Permita que qualquer conector no compartimento especificado desta tenancy acesse qualquer log (mesma tenancy).
Allow any-user to read log-content in compartment id <source_log_compartment_OCID>

    where all {
        request.principal.type='serviceconnector',         
        request.principal.compartment.id='<serviceconnector_compartment_OCID>'
    }
Tenancy B
Admita qualquer conector na Tenancy A para acessar qualquer função nessa tenancy.
Define tenancy ConnectorTenancy as <tenancy_a_OCID>
Admit any-user to use fn-function in tenancy ConnectorTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Define tenancy ConnectorTenancy as <tenancy_a_OCID>
Admit any-user to use fn-invocation in tenancy ConnectorTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Métrica de Origem e Bucket de Destino em Outras Tenancies

Gravar políticas para um conector para mover dados de uma métrica em outra tenancy (A) para uma função em outra tenancy (C).


Métrica de origem e bucket de destino em outras tenancies
Callout Descrição
2 Métrica usada como origem do conector
2 Conector que move dados da métrica para o bucket
3 Bucket usado como destino do conector
Tenancy A
Admita qualquer conector no compartimento especificado da Tenancy B para acessar qualquer métrica no compartimento especificado dessa tenancy.
Define tenancy ConnectorTenancy as <tenancy_b_OCID>
Admit any-user of tenancy ConnectorTenancy to read metrics in compartment id <compartment_OCID_in_tenancy_a>
    where all 
    { 
        request.principal.type='serviceconnector', 
        request.principal.compartment.id=<compartment_OCID_in_tenancy_b>' 
    }
Tenancy B
Endossar qualquer conector nesta tenancy para acessar qualquer métrica na Tenancy A.
Define tenancy MetricTenancy as <tenancy_a_OCID>
Endorse any-user to read metrics in tenancy MetricTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Endossar qualquer conector nesta tenancy para acessar qualquer bucket na Tenancy C.
Define tenancy BucketTenancy as <tenancy_c_OCID>
Endorse any-user to manage objects in tenancy BucketTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Tenancy C
Admita qualquer conector no compartimento especificado da Tenancy B para mover dados para qualquer bucket no compartimento especificado dessa tenancy.
Define tenancy ConnectorTenancy as <tenancy_b_OCID>
Admit any-user of tenancy ConnectorTenancy to manage objects in compartment id <compartment_OCID_in_tenancy_c>
    where all 
    { 
        request.principal.type='serviceconnector', 
        request.principal.compartment.id=<compartment_OCID_in_tenancy_b>' 
    }