Sécurisation du centre de connecteurs

Cette rubrique fournit des informations et des recommandations de sécurité pour le service Oracle Cloud Infrastructure Connector Hub.

Responsabilités en matière de sécurité

Pour utiliser le centre de connecteurs en toute sécurité, renseignez-vous sur vos responsabilités en matière de sécurité et de conformité.

En général, Oracle assure la sécurité de l'infrastructure et des opérations en nuage, comme les contrôles de l'accès des opérateurs au nuage et l'application de correctifs de sécurité à l'infrastructure. Vous êtes responsable de la configuration sécurisée de vos ressources en nuage. La sécurité dans le nuage est une responsabilité partagée entre vous et Oracle.

Oracle est responsable des exigences de sécurité suivantes :

  • Physical Security : :Oracle est responsable de la protection de l'infrastructure globale qui exécute tous les services offerts dans Oracle Cloud Infrastructure. Cette infrastructure se compose du matériel, du logiciel, du réseau et des installations qui exécutent les services Oracle Cloud Infrastructure.

Vos responsabilités en matière de sécurité sont décrites dans cette page, qui comprend les domaines suivants :

  • Contrôle de l'accès : Limitez le plus possible les privilèges. Les utilisateurs ne doivent disposer que de l'accès nécessaire pour effectuer leur travail.

Tâches de sécurité initiales

Utilisez cette liste de vérification pour identifier les tâches à effectuer pour sécuriser le centre de connecteurs d'une nouvelle location Oracle Cloud Infrastructure.

Tâche Informations supplémentaires
Utiliser les politiques GIA pour accorder l'accès aux utilisateurs et aux ressources Politiques GIA

Tâches de sécurité régulières

Après avoir commencé à utiliser le centre de connecteurs, utilisez cette liste de vérification pour identifier les tâches de sécurité que nous vous recommandons d'effectuer régulièrement.

Le centre de connecteurs ne comporte aucune tâche de sécurité que vous devez effectuer régulièrement.

Politiques GIA

Utiliser des politiques pour limiter l'accès au centre de connecteurs.

Une politique indique qui peut accéder aux ressources Oracle Cloud Infrastructure et comment. Pour plus d'informations, voir Fonctionnement des politiques.

Affectez à un groupe les privilèges minimaux nécessaires à l'exercice de ses responsabilités. Chaque politique comporte un verbe qui décrit les actions que le groupe est autorisé à effectuer. De l'accès le plus restreint à l'accès le plus élevé, les verbes disponibles sont les suivants : inspect, read, use et manage.

Politiques d'accès d'utilisateur

Pour utiliser des connecteurs, un utilisateur doit faire partie d'un groupe et une politique doit accorder à ce groupe l'autorisation appropriée dans le compartiment ou la location.

Créer, mettre à jour et supprimer des connecteurs (aucune file d'attente ou flux)

Laissez le groupe spécifié créer, mettre à jour et supprimer des connecteurs dans le compartiment spécifié.

Allow group <group-name> to manage serviceconnectors in compartment <compartment-name>
                    

Mettre à jour uniquement les connecteurs (aucune file d'attente ou flux)

Laisser le groupe spécifié mettre à jour les connecteurs uniquement dans le compartiment spécifié. Le groupe ne peut pas créer ni supprimer de connecteurs.

Allow group <group-name> to use serviceconnectors in compartment <compartment-name>
                    

Créer, mettre à jour et supprimer des connecteurs avec des files d'attente

Laissez le groupe spécifié lire les files d'attente dans le compartiment spécifié et créez et mettez à jour les connecteurs qui utilisent une source de file d'attente ou une cible de file d'attente. Laissez également le groupe supprimer les connecteurs du compartiment spécifié.

Allow group <group-name> to manage serviceconnectors in compartment <compartment-name>
Allow group <group-name> to read queues in compartment <compartment-name>
                    

Créer, mettre à jour et supprimer des connecteurs avec des flux

Laissez le groupe spécifié lire les flux et les groupes de flux dans le compartiment spécifié et créer et mettre à jour des connecteurs qui utilisent une source du service de diffusion en continu ou une cible du service de diffusion en continu. Laissez également le groupe supprimer les connecteurs du compartiment spécifié.

Allow group <group-name> to manage serviceconnectors in compartment <compartment-name>
Allow group <group-name> to read stream-family in compartment <compartment-name>
                    

Pour plus d'informations sur les politiques du centre de connecteurs, voir Informations détaillées sur le centre de connecteurs.

Politiques d'accès au service

Note

Assurez-vous que toute politique que vous créez est conforme aux directives de votre société.

Pour déplacer des données, votre connecteur doit être autorisé à accéder aux ressources spécifiées dans les sources , la tâche et les services cibles . Certaines ressources sont accessibles sans politiques. Les politiques par défaut fournissant l'autorisation requise sont offertes lorsque vous utilisez la console pour définir un connecteur. Ces politiques sont limitées au contexte du connecteur. Vous pouvez accepter les politiques par défaut ou vous assurer que vous disposez des autorisations appropriées dans les politiques personnalisées pour l'accès des utilisateurs et des services.

Par exemple, la politique par défaut suivante est offerte lorsque vous créez ou modifiez un connecteur qui déplace les données du service de journalisation vers le service de surveillance.

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>'
}

Pour plus d'informations, y compris les politiques par défaut, voir Accès aux services source, tâche et cible.

Accès au connecteur interlocation

Utilisez l'accès au connecteur interlocation pour partager des connecteurs avec une autre organisation qui a sa propre location. Par exemple, partagez des connecteurs avec une autre unité d'affaires de votre société, un client de votre société ou une société qui fournit des services à votre société.

Note

Pour créer un connecteur qui accède aux ressources d'autres locations, vous devez utiliser la trousse SDK, l'interface de ligne de commande ou l'API OCI. (Le générateur de politiques de la console ne fournit pas d'informations à partir d'autres locations ou ne suggère pas d'énoncés Endorse, Admit ou Define.) Pour obtenir des instructions sur l'interface de ligne de commande et l'API, voir Création d'un connecteur.

Pour accéder aux ressources et les partager, les administrateurs des deux locations doivent créer des énoncés de politique spéciaux indiquant explicitement les ressources accessibles et pouvant être partagées. Ces énoncés spéciaux utilisent les verbes Define, Endorse et Admit. Pour plus d'informations sur ces énoncés, voir Politiques d'accès interlocation.

Instructions de politique de location source

Utilisez un énoncé de politique dans la location source pour :

  • Admettre un connecteur d'une location de destination pour accéder aux ressources de votre location (source)
  • Endosser un connecteur pour accéder aux ressources de la location de destination
  • Endosser un groupe pour accéder aux ressources de la location de destination
Note

Les exemples d'énoncés de politique suivants sont formatés pour plus de lisibilité. Avant d'utiliser des copies de ces instructions, supprimez les lignes, les onglets et les espaces.
Admettre un connecteur de la location de destination pour accéder à un type spécifique de ressource de votre location (source)
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>' 
    }
Pour consulter des exemples, voir Exemples. Pour trouver les autorisations requises pour un type spécifique de ressource accessible par un connecteur, voir Politiques par défaut.
Endosser un groupe dans votre location (source) pour effectuer des opérations sur n'importe quel connecteur de n'importe quelle location
Endorse group <group_name> to manage serviceconnectors in any-tenancy
Endosser un groupe dans votre location (source) pour effectuer n'importe quoi avec n'importe quel connecteur de la location de destination uniquement
Pour écrire une politique qui réduit la portée de l'accès de la location, l'administrateur source doit référencer l'OCID de la location de destination fourni par l'administrateur de destination.
Define tenancy DestinationTenancy as <destination_tenancy_OCID>
Endorse group <group_name> to read serviceconnectors in tenancy DestinationTenancy

Énoncés de politique de location de destination

Utilisez un énoncé de politique dans la location de destination pour :

  • Endosser un connecteur pour accéder aux ressources de la location source
  • Admettre un connecteur de la location source pour accéder aux ressources de votre location (destination)
  • Admettre un groupe ou un groupe dynamique de la location source pour accéder aux ressources de votre location (destination)
Note

Les exemples d'énoncés de politique suivants sont formatés pour plus de lisibilité. Avant d'utiliser des copies de ces instructions, supprimez les lignes, les onglets et les espaces.
Endossez n'importe quel connecteur de votre location (destination) pour accéder à un type spécifique de ressource dans la location source
Define tenancy SourceTenancy as <source_tenancy_OCID>
Endorse any-user to <permissions_for_resource_kind> in tenancy SourceTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Pour consulter des exemples, voir Exemples. Pour trouver les autorisations requises pour un type spécifique de ressource accessible par un connecteur, voir Politiques par défaut.
Admettre à un groupe de la location source qu'il peut utiliser avec n'importe quel connecteur de votre location (destination)
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
Admettre un groupe de la location source pour lire les connecteurs du compartiment SharedConnectors uniquement (dans votre location de destination)
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
Admettre un groupe dynamique de la location source pour lire les connecteurs uniquement dans le compartiment SharedConnectors (dans votre location de destination)
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
Pour trouver les autorisations requises pour un type spécifique de ressource accessible par un groupe dynamique, voir Politiques personnalisées.

Exemples

Note

  • Écrivez des politiques interlocation avant de créer le connecteur. Vous devez utiliser la trousse SDK, l'interface de ligne de commande ou l'API OCI pour créer un connecteur interlocation.
  • Les exemples d'énoncés de politique suivants sont formatés pour plus de lisibilité. Avant d'utiliser des copies de ces instructions, supprimez les lignes, les onglets et les espaces.
  • Pour endosser ou admettre un connecteur pour l'accès à une ressource source, cible ou tâche qui n'est pas couverte dans ces exemples, utilisez les autorisations de ressource dans les politiques par défaut.
Source de flux dans une autre location

Écrivez des politiques pour qu'un connecteur déplace les données d'un flux d'une autre location vers un seau de la location du connecteur.


Source de flux dans une autre location
Légende Description
1 Flux utilisé comme source de connecteur
2 Connecteur qui déplace les données du flux vers le seau
3 Seau utilisé comme cible de connecteur

Voici les politiques pour déplacer ces données du flux de la location A vers le seau de la location B, à l'aide du connecteur de la location B.

Location A
Admettez un connecteur dans le compartiment spécifié de la location B pour accéder à n'importe quel flux dans le compartiment spécifié de cette location.
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>' 
    }
Location B
Endossez n'importe quel connecteur de cette location pour accéder à n'importe quel flux de la location 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' 
    }
Autoriser tout connecteur du compartiment spécifié de cette location à déplacer des données vers le seau (même location).
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>'
    }
Source de journaux dans une autre location

Écrivez des politiques pour qu'un connecteur déplace les données d'un journal d'une autre location vers un groupe de journaux de la location du connecteur.


Source de journaux dans une autre location
Légende Description
1 Journal utilisé comme source de connecteur
2 Connecteur qui déplace les données du journal vers le groupe de journaux
3 Groupe de journaux utilisé comme cible de connecteur
Location A
Admettez un connecteur dans le compartiment spécifié de la location B pour accéder à n'importe quel journal dans le compartiment spécifié de cette location.
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>' 
    }
Location B
Endossez n'importe quel connecteur de cette location pour accéder à n'importe quel journal de la location A.
Define tenancy LogTenancy as <tenancy_a_OCID>
Endorse any-user to read log-content in tenancy LogTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Autoriser tout connecteur du compartiment spécifié de cette location à déplacer des données vers le groupe de journaux (même location).
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>
    }
Fonction cible dans une autre location

Écrivez des politiques pour qu'un connecteur déplace les données d'un journal de la location du connecteur vers une fonction d'une autre location.


Fonction cible dans une autre location
Légende Description
1 Journal utilisé comme source de connecteur
2 Connecteur qui déplace les données du journal vers la fonction
3 Fonction utilisée comme cible de connecteur
Location A
Endossez n'importe quel connecteur dans le compartiment spécifié de cette location pour accéder à n'importe quelle fonction dans le compartiment spécifié de la location 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' 
    }
Autoriser tout connecteur du compartiment spécifié de cette location à accéder à n'importe quel journal (même location).
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>'
    }
Location B
Autorisez tout connecteur de la location A à accéder à n'importe quelle fonction de cette location.
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' 
    }
Mesure source et seau cible dans d'autres locations

Écrivez des politiques pour un connecteur afin de déplacer des données d'une mesure d'une autre location (A) vers une fonction d'une autre location (C).


Mesure source et seau cible dans d'autres locations
Légende Description
1 Mesure utilisée comme source de connecteur
2 Connecteur qui déplace les données de la mesure vers le seau
3 Seau utilisé comme cible de connecteur
Location A
Admettez un connecteur dans le compartiment spécifié de la location B pour accéder à toute mesure dans le compartiment spécifié de cette location.
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>' 
    }
Location B
Endossez n'importe quel connecteur de cette location pour accéder à n'importe quelle mesure de la location A.
Define tenancy MetricTenancy as <tenancy_a_OCID>
Endorse any-user to read metrics in tenancy MetricTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Endossez n'importe quel connecteur de cette location pour accéder à n'importe quel seau de la location C.
Define tenancy BucketTenancy as <tenancy_c_OCID>
Endorse any-user to manage objects in tenancy BucketTenancy
    where all 
    { 
        request.principal.type='serviceconnector' 
    }
Location C
Admettez un connecteur dans le compartiment spécifié de la location B pour déplacer des données vers n'importe quel seau dans le compartiment spécifié de cette location.
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>' 
    }