Autorisations sur les jeux de données de listes
Présentation
Cette opération renvoie les autorisations sur une table nommée pour l'utilisateur (ou ses rôles). Il prend le chemin d'accès complet à une ou plusieurs tables nommées pour lesquelles l'utilisateur souhaite répertorier les autorisations. Les autorisations peuvent être EXECUTE, CREATE, MODIFY ou DELETE.
Les autorisations renvoyées incluent celles accordées directement à l'utilisateur ou à l'un de ses rôles. Les autorisations EXECUTE peuvent également être héritées des autorisations dont un utilisateur ou ses rôles disposent sur les dossiers parents.
Les règles métier suivantes peuvent vous aider à comprendre une réponse donnée :
- Si les autorisations sont vides pour la ressource, il peut y avoir une ou plusieurs raisons, notamment :
- L'utilisateur ne dispose pas d'autorisation EXECUTE sur une table nommée.
- Un type de ressource différent est spécifié.
- Une ressource inexistante est spécifiée.
- Si la liste de tables est omise, toutes les tables nommées sur lesquelles le jeton d'utilisateur spécifié dispose d'une autorisation EXECUTE, CREATE, MODIFY ou DELETE sont renvoyées.
- Si l'utilisateur ne dispose d'aucune autorisation sur aucune table, une réponse vide est renvoyée.
Flux d'autorisation ACL
L'utilisateur effectuant cette requête obtiendra des autorisations uniquement sur les ressources sur lesquelles il dispose d'au moins une autorisation EXECUTE.
Format d'URL GET HTTP
Le format suivant est utilisé pour la requête HTTP GET pour toutes les tables :
HTTP GET http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables
Le format suivant est utilisé pour la requête HTTP GET pour la table spécifiée :
HTTP GET http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables/namedTablePath
Paramètres
Paramètre | Type | Obligatoire | Description |
---|---|---|---|
namedTablePath | Chaîne | Non | Définit le chemin d'accès à la table nommée dont les autorisations sur les jeux de données doivent être renvoyées. |
Format d'URL POST HTTP
Les requêtes POST HTTP se présentent au format suivant :
HTTP POST URL: /permissions/tables
POST BODY: {
"resources":[
"/Samples/NamedTables/WorldTable",
"/Samples/NamedTables/USA"
]
}
POST HEADER: Content-Type:application/json
Résultat
Renvoie une liste de tables avec les autorisations d'un utilisateur.
Exemple pour GET
Cet exemple demande toutes les autorisations dont dispose l'utilisateur sur "/Samples/NamedTables/WorldTable".
URL de requête
http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables/Samples/NamedTables/WorldTable
Réponse
{ "name":"/Samples/NamedTables/WorldTable", "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] }
Exemple pour POST
Cette requête renvoie une liste des autorisations dont dispose l'utilisateur sur les tables spécifiées dans le corps de la requête :
URL de requête
http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables
Corps de la requête
{ "resources":[ "/Samples/NamedTables/USA", "/Samples/NamedTables/WorldTable" ] }
Réponse
{ "resourcePermissions":[ { "name":"/Samples/NamedTables/USA", "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] }, { "name":"/Samples/NamedTables/WorldTable", "permissions":[ "EXECUTE", "CREATE", "MODIFY", "DELETE" ] } ] }