OneLake Data Access Security - Create Or Update Data Access Roles
Crée ou met à jour des rôles d’accès aux données dans OneLake.
Note
Cette API fait partie d’une préversion et est fournie uniquement à des fins d’évaluation et de développement. Il peut changer en fonction des commentaires et n’est pas recommandé pour une utilisation en production.
Étendues déléguées requises
OneLake.ReadWrite.All
Identités prises en charge par Microsoft Entra
Cette API prend en charge les identités Microsoft répertoriées dans cette section.
| Identity | Support |
|---|---|
| User | Yes |
| Service principal et identités gérées | Yes |
Interface
PUT https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/dataAccessRoles
PUT https://api.fabric.microsoft.com/v1/workspaces/{workspaceId}/items/{itemId}/dataAccessRoles?dryRun={dryRun}
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
|
item
|
path | True |
string (uuid) |
ID de l’élément Fabric à placer les rôles. |
|
workspace
|
path | True |
string (uuid) |
ID de l’espace de travail. |
|
dry
|
query |
boolean |
Utilisé pour déclencher une exécution sèche de l’appel d’API. True : l’appel d’API déclenche une exécution sèche et aucun rôle n’est modifié. False : ne déclenche pas une exécution sèche et les rôles sont mis à jour. |
En-tête de la demande
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| If-Match |
string |
Valeur ETag. L’ETag doit être spécifié entre guillemets. Si elle est fournie, l’appel réussit uniquement si l’ETag de la ressource correspond à l’ETag fourni. |
|
| If-None-Match |
string |
Valeur ETag. L’ETag doit être spécifié entre guillemets. Si elle est fournie, l’appel réussit uniquement si l’ETag de la ressource ne correspond pas à l’ETag fourni. |
Corps de la demande
| Nom | Type | Description |
|---|---|---|
| value |
Liste des rôles utilisés pour gérer la sécurité de l’accès aux données et garantir que seuls les utilisateurs autorisés peuvent afficher certaines données. Un rôle représente un ensemble d’autorisations et d’étendues d’autorisation qui définissent les actions que ses membres sont autorisés à effectuer pour les données dans l’étendue. Les membres sont des utilisateurs ou des groupes qui ont reçu le rôle, et ils peuvent lire les données en fonction des autorisations affectées au rôle. Par exemple, un membre peut être un groupe d’ID Microsoft Entra et une étendue d’autorisation peut être une action de lecture appliquée sur le chemin d’accès au fichier, aux dossiers ou aux tables donnés dans OneLake. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK |
La demande s’est terminée avec succès. En-têtes Etag: string |
|
| Other Status Codes |
Codes d’erreur courants :
|
Exemples
| Create or update data access roles example |
| Create or update data access roles with constraints example |
| Create or update data access roles with tables path example |
Create or update data access roles example
Exemple de requête
PUT https://api.fabric.microsoft.com/v1/workspaces/cfafbeb1-8037-4d0c-896e-a46fb27ff222/items/25bac802-080d-4f73-8a42-1b406eb1fceb/dataAccessRoles
{
"value": [
{
"name": "default_role_1",
"decisionRules": [
{
"effect": "Permit",
"permission": [
{
"attributeName": "Path",
"attributeValueIncludedIn": [
"*"
]
},
{
"attributeName": "Action",
"attributeValueIncludedIn": [
"Read"
]
}
]
}
],
"members": {
"fabricItemMembers": [
{
"itemAccess": [
"ReadAll"
],
"sourcePath": "cfafbeb1-8037-4d0c-896e-a46fb27ff222/25bac802-080d-4f73-8a42-1b406eb1fceb"
}
]
}
}
]
}
Exemple de réponse
ETag: 33a64df551425fcc55e4d42a148795d9f25f89d4
Create or update data access roles with constraints example
Exemple de requête
PUT https://api.fabric.microsoft.com/v1/workspaces/cfafbeb1-8037-4d0c-896e-a46fb27ff222/items/25bac802-080d-4f73-8a42-1b406eb1fceb/dataAccessRoles
{
"value": [
{
"name": "default_role_1",
"decisionRules": [
{
"effect": "Permit",
"permission": [
{
"attributeName": "Path",
"attributeValueIncludedIn": [
"*"
]
},
{
"attributeName": "Action",
"attributeValueIncludedIn": [
"Read"
]
}
],
"constraints": {
"columns": [
{
"tablePath": "/Tables/industrytable",
"columnNames": [
"Industry"
],
"columnEffect": "Permit",
"columnAction": [
"Read"
]
}
],
"rows": [
{
"tablePath": "/Tables/industrytable",
"value": "select * from Industrytable where Industry=\"Green\""
}
]
}
}
],
"members": {
"fabricItemMembers": [
{
"itemAccess": [
"ReadAll"
],
"sourcePath": "cfafbeb1-8037-4d0c-896e-a46fb27ff222/25bac802-080d-4f73-8a42-1b406eb1fceb"
}
]
}
}
]
}
Exemple de réponse
ETag: 33a64df551425fcc55e4d42a148795d9f25f89d4
Create or update data access roles with tables path example
Exemple de requête
PUT https://api.fabric.microsoft.com/v1/workspaces/cfafbeb1-8037-4d0c-896e-a46fb27ff222/items/25bac802-080d-4f73-8a42-1b406eb1fceb/dataAccessRoles
{
"value": [
{
"name": "default_role_1",
"decisionRules": [
{
"effect": "Permit",
"permission": [
{
"attributeName": "Path",
"attributeValueIncludedIn": [
"/Tables/sales",
"/Tables/users"
]
},
{
"attributeName": "Action",
"attributeValueIncludedIn": [
"Read"
]
}
]
}
],
"members": {
"fabricItemMembers": [
{
"itemAccess": [
"ReadAll"
],
"sourcePath": "cfafbeb1-8037-4d0c-896e-a46fb27ff222/25bac802-080d-4f73-8a42-1b406eb1fceb"
}
]
}
}
]
}
Exemple de réponse
ETag: 33a64df551425fcc55e4d42a148795d9f25f89d5
Définitions
| Nom | Description |
|---|---|
|
Attribute |
Spécifie le nom de l’attribut en cours d’évaluation pour les autorisations d’accès. AttributeName peut être |
|
Column |
Tableau d’actions appliquées aux columnNames. Cela détermine les actions qu’un utilisateur pourra effectuer sur les colonnes. Les valeurs autorisées sont : Lecture. Des types columnAction supplémentaires peuvent être ajoutés au fil du temps. |
|
Column |
ColumnConstraint indique une contrainte qui détermine les autorisations et la visibilité qu’un utilisateur a sur les colonnes d’une table. |
|
Column |
Effet donné aux columnNames. La seule valeur autorisée est Permit. Des types columnEffect supplémentaires peuvent être ajoutés au fil du temps. |
| Constraints |
Toutes les contraintes telles que la sécurité au niveau des lignes ou des colonnes appliquées aux tables dans le cadre de ce rôle. S’il n’est pas inclus, aucune contrainte ne s’applique aux tables du rôle. |
|
Create |
Contient la définition des rôles utilisés pour gérer la sécurité de l’accès aux données et garantir que seuls les utilisateurs autorisés peuvent afficher, modifier ou supprimer certaines données. L’appel de cette API met à jour les définitions de rôle et crée, met à jour ou supprime des rôles pour correspondre à la charge utile fournie. |
|
Data |
Un rôle d’accès aux données représente un ensemble d’autorisations et d’étendues d’autorisation qui définissent les actions que ses membres sont autorisés à effectuer pour les données dans l’étendue. Les rôles d’accès aux données sont utilisés pour gérer la sécurité de l’accès aux données et s’assurer que seuls les utilisateurs autorisés peuvent afficher, modifier ou supprimer certaines données. Les membres sont des utilisateurs ou des groupes qui ont reçu le rôle, et ils peuvent lire les données en fonction des autorisations affectées au rôle. Par exemple, un membre peut être un groupe d’ID Microsoft Entra et une étendue d’autorisation peut être une action de lecture appliquée sur le chemin d’accès au fichier, aux dossiers ou aux tables donnés dans OneLake. |
|
Decision |
Spécifie une règle pour la correspondance de l’action demandée. Contient l’effet (Permis) et l’autorisation qui déterminent si un utilisateur ou une entité est autorisé à effectuer une action spécifique (par exemple, en lecture) sur une ressource. L’autorisation est un ensemble d’étendues, définies par des attributs, qui doivent correspondre à l’action demandée pour que la règle s’applique. |
| Effect |
Effet qu’un rôle a sur l’accès à la ressource de données. Actuellement, le seul type d’effet pris en charge est |
|
Error |
Objet de détails de ressource associé à l’erreur. |
|
Error |
Réponse d’erreur. |
|
Error |
Détails de la réponse d’erreur. |
|
Fabric |
Membre d’élément d’infrastructure. |
|
Item |
Liste spécifiant les autorisations d’accès de l’utilisateur Fabric à inclure automatiquement dans les membres du rôle. Des types itemAccess supplémentaires peuvent être ajoutés au fil du temps. |
| Members |
Objet membres qui contient les membres du rôle en tant que tableaux de différents types de membres. |
|
Microsoft |
Membre Microsoft Entra ID affecté au rôle. |
|
Object |
Type de l’objet Microsoft Entra ID. Des types objectType supplémentaires peuvent être ajoutés au fil du temps. |
|
Permission |
Définit un ensemble d’attributs (propriétés) qui déterminent l’étendue et le niveau d’accès à une ressource. Lorsque |
|
Row |
RowConstraint indique une contrainte qui détermine les lignes d’une table que les utilisateurs peuvent voir. Les rôles définis avec RowConstraints utilisent T-SQL pour définir un prédicat qui filtre les données d’une table. Les lignes qui ne répondent pas aux conditions du prédicat sont filtrées, laissant un sous-ensemble des lignes d’origine. RowConstraints peut également être utilisé pour spécifier des saveurs dynamiques et multi-tables de RLS à l’aide de T-SQL. |
AttributeName
Spécifie le nom de l’attribut en cours d’évaluation pour les autorisations d’accès. AttributeName peut être Path ou Action. Des types attributeName supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Path |
Chemin d’accès du nom d’attribut |
| Action |
Action de nom d’attribut |
ColumnAction
Tableau d’actions appliquées aux columnNames. Cela détermine les actions qu’un utilisateur pourra effectuer sur les colonnes. Les valeurs autorisées sont : Lecture. Des types columnAction supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Read |
Valeur ColumnAction Read |
ColumnConstraint
ColumnConstraint indique une contrainte qui détermine les autorisations et la visibilité qu’un utilisateur a sur les colonnes d’une table.
| Nom | Type | Description |
|---|---|---|
| columnAction |
Tableau d’actions appliquées aux columnNames. Cela détermine les actions qu’un utilisateur pourra effectuer sur les colonnes. Les valeurs autorisées sont : Lecture. Des types columnAction supplémentaires peuvent être ajoutés au fil du temps. |
|
| columnEffect |
Effet donné aux columnNames. La seule valeur autorisée est Permit. Des types columnEffect supplémentaires peuvent être ajoutés au fil du temps. |
|
| columnNames |
string[] |
Tableau de noms de colonnes sensibles à la casse. Chaque valeur est un nom de colonne de la table spécifiée dans |
| tablePath |
string |
Chemin d’accès relatif au fichier spécifiant la table à laquelle la contrainte de colonne s’applique. Cela doit être sous la forme de |
ColumnEffect
Effet donné aux columnNames. La seule valeur autorisée est Permit. Des types columnEffect supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Permit |
The ColumnEffect type Permit |
Constraints
Toutes les contraintes telles que la sécurité au niveau des lignes ou des colonnes appliquées aux tables dans le cadre de ce rôle. S’il n’est pas inclus, aucune contrainte ne s’applique aux tables du rôle.
| Nom | Type | Description |
|---|---|---|
| columns |
Tableau de contraintes de colonne appliquées à une ou plusieurs tables dans le rôle d’accès aux données. |
|
| rows |
Tableau de contraintes de ligne appliquées à une ou plusieurs tables dans le rôle d’accès aux données. |
CreateOrUpdateDataAccessRolesRequest
Contient la définition des rôles utilisés pour gérer la sécurité de l’accès aux données et garantir que seuls les utilisateurs autorisés peuvent afficher, modifier ou supprimer certaines données. L’appel de cette API met à jour les définitions de rôle et crée, met à jour ou supprime des rôles pour correspondre à la charge utile fournie.
| Nom | Type | Description |
|---|---|---|
| value |
Liste des rôles utilisés pour gérer la sécurité de l’accès aux données et garantir que seuls les utilisateurs autorisés peuvent afficher certaines données. Un rôle représente un ensemble d’autorisations et d’étendues d’autorisation qui définissent les actions que ses membres sont autorisés à effectuer pour les données dans l’étendue. Les membres sont des utilisateurs ou des groupes qui ont reçu le rôle, et ils peuvent lire les données en fonction des autorisations affectées au rôle. Par exemple, un membre peut être un groupe d’ID Microsoft Entra et une étendue d’autorisation peut être une action de lecture appliquée sur le chemin d’accès au fichier, aux dossiers ou aux tables donnés dans OneLake. |
DataAccessRole
Un rôle d’accès aux données représente un ensemble d’autorisations et d’étendues d’autorisation qui définissent les actions que ses membres sont autorisés à effectuer pour les données dans l’étendue. Les rôles d’accès aux données sont utilisés pour gérer la sécurité de l’accès aux données et s’assurer que seuls les utilisateurs autorisés peuvent afficher, modifier ou supprimer certaines données. Les membres sont des utilisateurs ou des groupes qui ont reçu le rôle, et ils peuvent lire les données en fonction des autorisations affectées au rôle. Par exemple, un membre peut être un groupe d’ID Microsoft Entra et une étendue d’autorisation peut être une action de lecture appliquée sur le chemin d’accès au fichier, aux dossiers ou aux tables donnés dans OneLake.
| Nom | Type | Description |
|---|---|---|
| decisionRules |
Tableau d’autorisations qui composent le rôle d’accès aux données. |
|
| id |
string (uuid) |
ID unique du rôle d’accès aux données. |
| members |
Objet membres qui contient les membres du rôle en tant que tableaux de différents types de membres. |
|
| name |
string |
Nom du rôle d’accès aux données. |
DecisionRule
Spécifie une règle pour la correspondance de l’action demandée. Contient l’effet (Permis) et l’autorisation qui déterminent si un utilisateur ou une entité est autorisé à effectuer une action spécifique (par exemple, en lecture) sur une ressource. L’autorisation est un ensemble d’étendues, définies par des attributs, qui doivent correspondre à l’action demandée pour que la règle s’applique.
| Nom | Type | Description |
|---|---|---|
| constraints |
Toutes les contraintes telles que la sécurité au niveau des lignes ou des colonnes appliquées aux tables dans le cadre de ce rôle. S’il n’est pas inclus, aucune contrainte ne s’applique aux tables du rôle. |
|
| effect |
Effet qu’un rôle a sur l’accès à la ressource de données. Actuellement, le seul type d’effet pris en charge est |
|
| permission |
La propriété |
Effect
Effet qu’un rôle a sur l’accès à la ressource de données. Actuellement, le seul type d’effet pris en charge est Permit, qui accorde l’accès à la ressource. Des types d’effets supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Permit |
le type d’effet Permit |
ErrorRelatedResource
Objet de détails de ressource associé à l’erreur.
| Nom | Type | Description |
|---|---|---|
| resourceId |
string |
ID de ressource impliqué dans l’erreur. |
| resourceType |
string |
Type de la ressource impliquée dans l’erreur. |
ErrorResponse
Réponse d’erreur.
| Nom | Type | Description |
|---|---|---|
| errorCode |
string |
Identificateur spécifique qui fournit des informations sur une condition d’erreur, ce qui permet une communication standardisée entre notre service et ses utilisateurs. |
| message |
string |
Représentation lisible humaine de l’erreur. |
| moreDetails |
Liste des détails d’erreur supplémentaires. |
|
| relatedResource |
Détails de la ressource associée à l’erreur. |
|
| requestId |
string |
ID de la demande associée à l’erreur. |
ErrorResponseDetails
Détails de la réponse d’erreur.
| Nom | Type | Description |
|---|---|---|
| errorCode |
string |
Identificateur spécifique qui fournit des informations sur une condition d’erreur, ce qui permet une communication standardisée entre notre service et ses utilisateurs. |
| message |
string |
Représentation lisible humaine de l’erreur. |
| relatedResource |
Détails de la ressource associée à l’erreur. |
FabricItemMember
Membre d’élément d’infrastructure.
| Nom | Type | Description |
|---|---|---|
| itemAccess |
Liste spécifiant les autorisations d’accès de l’utilisateur Fabric à inclure automatiquement dans les membres du rôle. Des types itemAccess supplémentaires peuvent être ajoutés au fil du temps. |
|
| sourcePath |
string pattern: ^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?/[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$ |
Chemin d’accès à l’élément Fabric ayant l’accès à l’élément spécifié. |
ItemAccess
Liste spécifiant les autorisations d’accès de l’utilisateur Fabric à inclure automatiquement dans les membres du rôle. Des types itemAccess supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Read |
Lecture de l’accès aux éléments. |
| Write |
Écriture d’accès aux éléments. |
| Reshare |
Partage d’accès à l’élément. |
| Explore |
Exploration d’accès aux éléments. |
| Execute |
Exécution de l’accès aux éléments. |
| ReadAll |
Élément Access ReadAll. |
Members
Objet membres qui contient les membres du rôle en tant que tableaux de différents types de membres.
| Nom | Type | Description |
|---|---|---|
| fabricItemMembers |
Liste des membres qui ont un certain jeu d’autorisations dans Microsoft Fabric. Tous les membres avec ce jeu d’autorisations sont ajoutés en tant que membres de ce rôle d’accès aux données. |
|
| microsoftEntraMembers |
Liste des membres de Microsoft Entra ID. |
MicrosoftEntraMember
Membre Microsoft Entra ID affecté au rôle.
| Nom | Type | Description |
|---|---|---|
| objectId |
string (uuid) |
ID d’objet. |
| objectType |
Type de l’objet Microsoft Entra ID. Des types objectType supplémentaires peuvent être ajoutés au fil du temps. |
|
| tenantId |
string (uuid) |
ID de locataire. |
ObjectType
Type de l’objet Microsoft Entra ID. Des types objectType supplémentaires peuvent être ajoutés au fil du temps.
| Valeur | Description |
|---|---|
| Group |
Groupe de noms d’attributs |
| User |
Utilisateur du nom d’attribut |
| ServicePrincipal |
Nom d’attribut ServicePrincipal |
| ManagedIdentity |
Nom de l’attribut ManagedIdentity |
PermissionScope
Définit un ensemble d’attributs (propriétés) qui déterminent l’étendue et le niveau d’accès à une ressource. Lorsque attributeName propriété est définie sur Path, la propriété attributeValueIncludedIn doit spécifier l’emplacement de la ressource accessible, par exemple « Tables/Table1 ». Lorsque la propriété attributeName est définie sur Action, la propriété attributeValueIncludedIn doit spécifier le type d’accès accordé, tel que Read.
| Nom | Type | Description |
|---|---|---|
| attributeName |
Spécifie le nom de l’attribut en cours d’évaluation pour les autorisations d’accès. AttributeName peut être |
|
| attributeValueIncludedIn |
string[] |
Spécifie une liste de valeurs pour le |
RowConstraint
RowConstraint indique une contrainte qui détermine les lignes d’une table que les utilisateurs peuvent voir. Les rôles définis avec RowConstraints utilisent T-SQL pour définir un prédicat qui filtre les données d’une table. Les lignes qui ne répondent pas aux conditions du prédicat sont filtrées, laissant un sous-ensemble des lignes d’origine. RowConstraints peut également être utilisé pour spécifier des saveurs dynamiques et multi-tables de RLS à l’aide de T-SQL.
| Nom | Type | Description |
|---|---|---|
| tablePath |
string |
Chemin d’accès relatif au fichier spécifiant la table à laquelle la contrainte de ligne s’applique. Cela doit être sous la forme de |
| value |
string |
Expression T-SQL utilisée pour évaluer les lignes que les membres du rôle peuvent voir. Seul un sous-ensemble de T-SQL peut être utilisé comme prédicat. |