Stratégies Data Integration
Pour créer des stratégies, utilisez le service Oracle Cloud Infrastructure Identity and Access Management (IAM) avec des domaines d'identité.
Par défaut, seuls les utilisateurs du groupe Administrators
ont accès à toutes les ressources et fonctions dans Data Integration. Afin de contrôler l'accès des utilisateurs non administrateurs aux fonctions et aux ressources Data Integration, créez des groupes IAM, puis écrivez des stratégies qui donnent à ces groupes l'accès approprié.
- Exemples de stratégie
- Activer l'accès à Data Integration et utiliser des espaces de travail
- Activation de l'utilisation d'un réseau privé dans les espaces de travail
- Activation de l'accès aux listes d'utilisateurs et de compartiments
- Autorisation de l'accès à la visualisation des espaces de travail
- Autorisation de l'accès à l'obtention des détails d'espace de travail
- Autorisation de l'accès à la mise à jour des espaces de travail
- Autorisation de l'accès à la gestion des espaces de travail
- Autoriser la recherche dans les espaces de travail
- Autoriser l'exportation et l'importation d'objets dans les espaces de travail
- Configurer l'accès inter-location pour la copie de projet et la copie d'application
- Activer l'export et l'import de l'espace de travail et des objets dans l'espace de travail
- Exemples de droit d'accès et d'API de stratégie
- Exemples de stratégie avec des instructions conditionnelles
- Activation de l'accès à OCI Object Storage
- Utiliser des bases de données autonomes en tant que cibles
- Publication vers le service OCI Data Flow
- Accéder à l'adresse REST du service OCI AI
- Activer l'accès à Data Integration et utiliser des espaces de travail
Les pages suivantes fournissent des informations supplémentaires sur l'écriture de stratégies :
- Présentation de la syntaxe de stratégie
- Création d'une stratégie à l'aide de la console
- Types de ressource
- Variables prises en charge
- Détails des combinaisons de verbe et de type de ressource
- Droits d'accès requis pour chaque opération d'API
Présentation de la syntaxe de stratégie
La syntaxe générale d'une instruction de stratégie est la suivante :
allow <subject> to <verb> <resource-type> in <location> where <condition>
Voici des exemples de ce que vous pouvez indiquer :
-
Un groupe ou un groupe dynamique par son nom ou son OCID en tant que
<subject>
. Vous pouvez également utiliserany-user
pour couvrir tous les utilisateurs dans la location. -
inspect
,read
,use
etmanage
en tant que<verb>
pour accorder à<subject>
des droits d'accès.Lorsque vous passez de
inspect
àread
, en passant paruse
etmanage
, le niveau d'accès augmente en général et les droits d'accès accordés sont cumulés. Par exemple,use
inclutread
et autorise en plus la mise à jour. -
Une famille de ressources telle que
virtual-network-family
pourresource-type
. Vous pouvez également indiquer une ressource individuelle d'une famille telle quevcns
ousubnets
. -
Un compartiment par son nom ou son OCID en tant que
<location>
. Vous pouvez également utilisertenancy
pour couvrir l'intégralité de la location. -
Des conditions dans
<condition>
, qui doivent être remplies pour que l'accès soit accordé. Pour les conditions multiples, vous pouvez utiliserany
ouall
.Une condition se compose de variables. Une variable peut être pertinente pour la demande elle-même (par exemple,
request.operation
) ou pour la ressource faisant l'objet d'une action dans la demande (par exemple,target.workspace.id
). Par exemple, pour autoriser un groupe à gérer un espace de travail spécifique et aucun autre espace de travail :allow group <group-name> to manage dis-workspaces in compartment <compartment-name> where target.workspace.id = '<workspace-ocid>'
Ou, pour autoriser un groupe à gérer toutes les ressources Data Integration, à l'exception de la suppression d'espaces de travail :
allow group <group-name> to manage dis-family in compartment <compartment-name> where request.permission != 'DIS_WORKSPACE_DELETE'
Pour plus d'informations, reportez-vous à Syntaxe de stratégie.
Pour plus d'informations sur la création de stratégies, reportez-vous à Fonctionnement des stratégies et à Référence de stratégie.
Types de ressource
Data Integration comprend des types de ressource individuels et agrégés pour l'élaboration des stratégies.
Vous pouvez utiliser des types de ressource agrégés pour écrire moins de stratégies. Par exemple, au lieu d'autoriser un groupe à gérer dis-workspaces
et dis-work-requests
, vous pouvez disposer d'une stratégie permettant au groupe de gérer le type de ressource agrégé dis-family
.
Type agrégé de ressource | Types individuels de ressource |
---|---|
dis-family |
|
dis-family
sont les API pour dis-workspaces
et dis-work-requests
. Par exemple :
allow group dis-admins to manage dis-family in compartment <compartment_name>
revient à écrire les deux stratégies suivantes :allow group dis-admins to manage dis-workspaces in compartment <compartment_name>
allow group dis-admins to manage dis-work-requests in compartment <compartment_name>
Variables prises en charge
Pour ajouter des conditions aux stratégies, vous pouvez utiliser les variables Oracle Cloud Infrastructure générales ou propres au service.
Data Integration prend en charge toutes les variables générales (reportez-vous à Variables générales pour toutes les demandes).
Le tableau suivant répertorie les variables de type de ressource que vous pouvez utiliser.
Les opérations pour ce type de ressource.. | Peuvent utiliser ces variables.. | Type de variable | Commentaires |
---|---|---|---|
dis-workspace | target.workspace.id | Entité (OCID) | Non disponible pour utilisation avec CreateWorkspace |
Les opérations pour ce chemin d'API.. | Peuvent utiliser ces variables.. | Type de variable | Commentaires |
---|---|---|---|
/workspaces/{workspaceId}/applications/{applicationKey}/* | target.application.key | Entité (clé) | Non disponible pour utilisation avec ListApplications et CreateApplication |
/workspaces/{workspaceId}/applications |
|
Entité (clé) |
Disponible uniquement pour utilisation avec Non disponible pour utilisation avec |
/workspaces/{workspaceId}/projects/{projectKey}/* | target.object.key | Entité (clé) | |
/workspaces/{workspaceId}/folders/{folderKey}/* |
| Entité (clé) | target.folder.key uniquement disponible pour utilisation sur CreateFolder |
/workspaces/{workspaceId}/dataflows/{dataflowKey}/* |
| Entité (clé) | target.folder.key uniquement disponible pour utilisation sur CreateDataflow , UpdateDataflow |
/workspaces/{workspaceId}/tasks/{dataflowKey}/* |
| Entité (clé) | target.folder.key uniquement disponible pour utilisation sur CreateTask et UpdateTask |
/workspaces/{workspaceId}/dataAssets/{dataAssetKey}/* | target.object.key | Entité (clé) | |
/workspaces/{workspaceId}/connections/{connectionKey}/* |
| Entité (clé) | target.folder.key uniquement disponible pour utilisation sur CreateConnection et UpdateConnection |
/workspaces/{workspaceId}/pipelines/{pipelineKey}/* |
| Entité (clé) | target.folder.key uniquement disponible pour utilisation sur CreatePipeline et UpdatePipeline |
Détails des combinaisons de verbe et de type de ressource
Utilisez les verbes et les types de ressource Oracle Cloud Infrastructure lors de la création d'une stratégie.
Les tableaux suivants indiquent les droits d'accès et les opérations d'API que couvre chaque verbe pour Data Integration. Le niveau d'accès est cumulatif à mesure que vous passez d'un verbe à l'autre, dans l'ordre suivant : inspect
, read
, use
, manage
. Le signe plus (+)
dans une cellule du tableau indique un accès incrémentiel par rapport à la cellule directement au-dessus, alors que la mention "aucun élément supplémentaire" n'indique aucun accès incrémentiel.
Droit d'accès | API entièrement couvertes |
---|---|
INSPECT |
|
DIS_WORK_REQUEST_INSPECT | ListWorkRequests |
ListWorkRequestErrors |
|
ListWorkRequestLogs |
|
LECTURE |
|
INSPECT + |
INSPECT + |
DIS_WORK_REQUEST_READ | GetWorkRequest |
USE |
|
aucun élément supplémentaire | aucun élément supplémentaire |
MANAGE |
|
aucun élément supplémentaire | aucun élément supplémentaire |
Chaque droit d'accès pour
dis-work-requests
couvre entièrement au moins une API. Aucune API n'est partiellement couverte par les droits d'accès dis-work-requests
.Droit d'accès | API entièrement couvertes |
---|---|
INSPECT |
|
DIS_WORKSPACE_INSPECT | ListWorkspaces |
DIS_WORKSPACE_OBJECT_INSPECT | ListProjects |
ListFolders |
|
ListDataFlows |
|
ListTasks |
|
ListTaskValidations |
|
ListApplications |
|
ListPublishedObjects |
|
ListDependentObjects |
|
ListTaskRuns |
|
ListTaskRunLogs |
|
ListDataAssets |
|
ListConnections |
|
ListSchemas |
|
ListDataEntities |
|
ListConnectionValidation |
|
ListDataFlowValidations |
|
ListExternalPublications | |
ListExternalPublicationValidations | |
ListReferences | |
ListPatchChanges | |
ListPipelines | |
ListSchedules | |
ListTaskSchedules | |
LECTURE | |
INSPECT + |
INSPECT + |
DIS_WORKSPACE_READ | GetWorkspace |
DIS_WORKSPACE_OBJECT_READ | GetCountStatistic |
GetProject |
|
GetFolder |
|
GetDataFlow |
|
GetTask |
|
GetTaskValidation |
|
GetApplication |
|
GetPatch |
|
GetPublishedObject |
|
GetDependentObject |
|
GetTaskRun |
|
GetDataAsset |
|
GetConnection |
|
GetSchema |
|
GetDataEntity |
|
GetConnectionValidation |
|
GetDataFlowValidation |
|
GetExternalPublication | |
GetExternalPublicationValidation | |
GetReference | |
GetPipeline | |
GetSchedule | |
GetTaskSchedule | |
USE |
|
READ + |
READ + |
DIS_WORKSPACE_EXECUTE | ExecuteTask |
DIS_WORKSPACE_UPDATE | UpdateWorkspace |
DIS_WORKSPACE_OBJECT_EXECUTE | CreateTaskRun |
UpdateTaskRun |
|
DIS_WORKSPACE_OBJECT_UPDATE | UpdateProject |
UpdateFolder |
|
UpdateDataFlow |
|
UpdateTask |
|
UpdateApplication |
|
UpdateDataAsset |
|
UpdateConnection |
|
UpdateReference | |
UpdateExternalPublication | |
UpdatePipeline | |
UpdateSchedule | |
UpdateTaskSchedule | |
DIS_WORKSPACE_OBJECT_CREATE | CreateProject |
CreateFolder |
|
CreateDataFlow |
|
CreateTask |
|
CreateTaskValidation |
|
CreatePatch |
|
CreateApplication |
|
CreateDataAsset |
|
CreateConnection |
|
CreateEntityShape |
|
CreateConnectionValidation |
|
CreateDataFlowValidation |
|
CreateExternalPublication | |
CreateExternalPublicationValidation | |
CreatePipeline | |
CreateSchedule | |
CreateTaskSchedule | |
DIS_WORKSPACE_OBJECT_DELETE | DeleteProject |
DeleteFolder |
|
DeleteDataFlow |
|
DeleteTask |
|
DeleteTaskValidation |
|
DeleteApplication |
|
DeletePatch |
|
DeleteTaskRun |
|
DeleteDataAsset |
|
DeleteConnection |
|
DeleteConnectionValidation |
|
DeleteDataFlowValidation |
|
DeleteExternalPublication | |
DeleteExternalPublicationValidation | |
DeletePipeline | |
DeleteSchedule | |
DeleteTaskSchedule | |
MANAGE |
|
USE + |
USE + |
DIS_WORKSPACE_CREATE | CreateWorkspace |
DIS_WORKSPACE_DELETE | DeleteWorkspace |
DIS_WORKSPACE_MOVE | ChangeCompartment |
DIS_WORKSPACE_START | StartWorkspace |
DIS_WORKSPACE_STOP | StopWorkspace |
Chaque droit d'accès pour
dis-workspaces
couvre entièrement une API. Aucune API n'est partiellement couverte par les droits d'accès dis-workspaces
.Droits d'accès requis pour chaque opération d'API
Le tableau répertorie les opérations d'API Data Integration dans un ordre logique, regroupées par type de ressource, ainsi que les droits d'accès requis pour les types de ressource dis-workspaces
et dis-work-requests
.
Pour plus d'informations sur les droits d'accès, reportez-vous à Droits d'accès.
Opération d'API | Droits d'accès |
---|---|
ListWorkspaces |
DIS_WORKSPACE_INSPECT |
GetWorkspace |
DIS_WORKSPACE_READ |
UpdateWorkspace |
DIS_WORKSPACE_UPDATE |
DeleteWorkspace |
DIS_WORKSPACE_DELETE |
CreateWorkspace |
DIS_WORKSPACE_CREATE |
ChangeCompartment |
DIS_WORKSPACE_MOVE |
StartWorkspace |
DIS_WORKSPACE_START |
StopWorkspace |
DIS_WORKSPACE_STOP |
ListWorkRequests |
DIS_WORK_REQUEST_INSPECT |
GetWorkRequest |
DIS_WORK_REQUEST_READ |
ListWorkRequestErrors |
DIS_WORK_REQUEST_INSPECT |
ListWorkRequestLogs |
DIS_WORK_REQUEST_INSPECT |
GetCountStatistic |
DIS_WORKSPACE_OBJECT_READ |
ListProjects |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateProject |
DIS_WORKSPACE_OBJECT_CREATE |
GetProject |
DIS_WORKSPACE_OBJECT_READ |
UpdateProject |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteProject |
DIS_WORKSPACE_OBJECT_DELETE |
ListFolders |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateFolder |
DIS_WORKSPACE_OBJECT_CREATE |
GetFolder |
DIS_WORKSPACE_OBJECT_READ |
UpdateFolder |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteFolder |
DIS_WORKSPACE_OBJECT_DELETE |
ListDataFlows |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateDataFlow |
DIS_WORKSPACE_OBJECT_CREATE |
GetDataFlow |
DIS_WORKSPACE_OBJECT_READ |
UpdateDataFlow |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteDataFlow |
DIS_WORKSPACE_OBJECT_DELETE |
ListTasks |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateTask |
DIS_WORKSPACE_OBJECT_CREATE |
GetTask |
DIS_WORKSPACE_OBJECT_READ |
UpdateTask |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteTask |
DIS_WORKSPACE_OBJECT_DELETE |
CreateTaskValidation |
DIS_WORKSPACE_OBJECT_CREATE |
ListTaskValidations |
DIS_WORKSPACE_OBJECT_INSPECT |
GetTaskValidations |
DIS_WORKSPACE_OBJECT_READ |
DeleteTaskValidation |
DIS_WORKSPACE_OBJECT_DELETE |
ListApplications |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateApplication |
DIS_WORKSPACE_OBJECT_CREATE |
GetApplication |
DIS_WORKSPACE_OBJECT_READ |
UpdateApplication |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteApplication |
DIS_WORKSPACE_OBJECT_DELETE |
ListPatches |
DIS_WORKSPACE_OBJECT_INSPECT |
CreatePatch |
DIS_WORKSPACE_OBJECT_CREATE |
GetPatch |
DIS_WORKSPACE_OBJECT_READ |
DeletePatch |
DIS_WORKSPACE_OBJECT_DELETE |
ListPatchChanges | DIS_WORKSPACE_OBJECT_INSPECT |
ListPublishedObjects |
DIS_WORKSPACE_OBJECT_INSPECT |
GetPublishedObject |
DIS_WORKSPACE_OBJECT_READ |
ListDependentObjects |
DIS_WORKSPACE_OBJECT_INSPECT |
GetDependenObject |
DIS_WORKSPACE_OBJECT_READ |
ListTaskRuns |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateTaskRun |
DIS_WORKSPACE_OBJECT_EXECUTE |
GetTaskRun |
DIS_WORKSPACE_OBJECT_READ |
UpdateTaskRun |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteTaskRun |
DIS_WORKSPACE_OBJECT_DELETE |
ListTaskRunLogs |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateDataAsset |
DIS_WORKSPACE_OBJECT_CREATE |
ListDataAssets |
DIS_WORKSPACE_OBJECT_INSPECT |
GetDataAsset |
DIS_WORKSPACE_OBJECT_READ |
UpdateDataAsset |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteDataAsset |
DIS_WORKSPACE_OBJECT_DELETE |
CreateConnection |
DIS_WORKSPACE_OBJECT_CREATE |
ListConnections |
DIS_WORKSPACE_OBJECT_INSPECT |
GetConnection |
DIS_WORKSPACE_OBJECT_READ |
UpdateConnection |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteConnection |
DIS_WORKSPACE_OBJECT_DELETE |
GetSchema |
DIS_WORKSPACE_OBJECT_READ |
ListSchemas |
DIS_WORKSPACE_OBJECT_INSPECT |
ListDataEntities |
DIS_WORKSPACE_OBJECT_INSPECT |
CreateEntityShape |
DIS_WORKSPACE_OBJECT_CREATE |
GetDataEntity |
DIS_WORKSPACE_OBJECT_READ |
CreateConnectionValidation |
DIS_WORKSPACE_OBJECT_CREATE |
ListConnectionValidations |
DIS_WORKSPACE_OBJECT_INSPECT |
GetConnectionValidation |
DIS_WORKSPACE_OBJECT_READ |
DeleteConnectionValidation |
DIS_WORKSPACE_OBJECT_DELETE |
CreateDataFlowValidation |
DIS_WORKSPACE_OBJECT_CREATE |
ListDataFlowValidations |
DIS_WORKSPACE_OBJECT_INSPECT |
GetDataFlowValidation |
DIS_WORKSPACE_OBJECT_READ |
DeleteDataFlowValiation |
DIS_WORKSPACE_OBJECT_DELETE |
ListReferences | DIS_WORKSPACE_OBJECT_INSPECT |
GetReference | DIS_WORKSPACE_OBJECT_READ |
UpdateReference | DIS_WORKSPACE_OBJECT_UPDATE |
ListExternalPublications | DIS_WORKSPACE_OBJECT_INSPECT |
CreateExternalPublication | DIS_WORKSPACE_OBJECT_CREATE |
GetExternalPublication | DIS_WORKSPACE_OBJECT_READ |
UpdateExternalPublication | DIS_WORKSPACE_OBJECT_UPDATE |
DeleteExternalPublication | DIS_WORKSPACE_OBJECT_DELETE |
ListExternalPublicationValidations | DIS_WORKSPACE_OBJECT_INSPECT |
CreateExternalPublicationValidation | DIS_WORKSPACE_OBJECT_CREATE |
GetExternalPublicationValidation | DIS_WORKSPACE_OBJECT_READ |
DeleteExternalPublicationValidation | DIS_WORKSPACE_OBJECT_DELETE |
ListPipelines | DIS_WORKSPACE_OBJECT_INSPECT |
GetPipeline | DIS_WORKSPACE_OBJECT_READ |
UpdatePipeline | DIS_WORKSPACE_OBJECT_UPDATE |
CreatePipeline | DIS_WORKSPACE_OBJECT_CREATE |
DeletePipeline | DIS_WORKSPACE_OBJECT_DELETE |
ListSchedules | DIS_WORKSPACE_OBJECT_INSPECT |
GetSchedule | DIS_WORKSPACE_OBJECT_READ |
UpdateSchedule | DIS_WORKSPACE_OBJECT_UPDATE |
CreateSchedule | DIS_WORKSPACE_OBJECT_CREATE |
DeleteSchedule | DIS_WORKSPACE_OBJECT_DELETE |
ListTaskSchedules | DIS_WORKSPACE_OBJECT_INSPECT |
GetTaskSchedule | DIS_WORKSPACE_OBJECT_READ |
UpdateTaskSchedule | DIS_WORKSPACE_OBJECT_UPDATE |
CreateTaskSchedule | DIS_WORKSPACE_OBJECT_CREATE |
DeleteTaskSchedule | DIS_WORKSPACE_OBJECT_DELETE |
CreateExportRequest |
DIS_WORKSPACE_OBJECT_EXPORT |
GetExportRequest |
DIS_WORKSPACE_OBJECT_READ |
ListExportRequests |
DIS_WORKSPACE_OBJECT_INSPECT |
UpdateExportRequest |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteExportRequest |
DIS_WORKSPACE_OBJECT_DELETE |
CreateImportRequest |
DIS_WORKSPACE_OBJECT_IMPORT |
GetImportRequest |
DIS_WORKSPACE_OBJECT_READ |
ListImportRequests |
DIS_WORKSPACE_OBJECT_INSPECT |
UpdateImportRequest |
DIS_WORKSPACE_OBJECT_UPDATE |
DeleteImportRequest |
DIS_WORKSPACE_OBJECT_DELETE |