Suppression d'une ressource ACL

Présentation

Cette opération supprime les autorisations NamedResource.EXECUTE sur les ressources pour les utilisateurs et les rôles spécifiés.

Les règles métier suivantes peuvent vous aider à comprendre une réponse donnée :
  • ResourceList contient un type de ressource – toutes les cartes nommées ou toutes les couches nommées.
  • La suppression de l'autorisation est toujours propagée vers le haut aux ressources parentes et vers le bas aux ressources dépendantes. Par exemple, des cartes nommées aux images tuilées nommées en propageant vers le haut et des cartes nommées aux couches de groupes nommées aux couches nommées aux couches d'étiquettes nommées aux sources d'étiquettes nommées en propageant vers le bas.
  • Lorsque la suppression de l'autorisation est en cours de propagation vers le bas, les autorisations ne sont pas supprimées si une ressource de niveau inférieur a besoin de la liste de contrôle d'accès (ACL) d'une autre ressource de haut niveau pour fonctionner. Par exemple, si un utilisateur dispose d'une autorisation sur deux cartes nommées référençant la même couche nommée, la suppression de l'autorisation sur une carte nommée ne propagera pas la modification sur la couche, étant donné que l'utilisateur peut toujours afficher la deuxième carte nommée qui fait référence à cette couche.
  • Si le paramètre facultatif recurseToData est défini sur true, la suppression de l'autorisation EXECUTE est également propagée aux tables nommées dépendantes. Si la table possède l'une des autorisations Dataset.DML CREATE, MODIFY ou DELETE, celle-ci est également supprimée, car l'utilisateur ne peut pas interroger la table si EXECUTE n'est pas présent.
  • Pour les images tuilées WMTS nommées, la suppression de l'autorisation n'est pas propagée aux ressources dépendantes.
  • L'autorisation est supprimée pour tous les utilisateurs et rôles sur les ressources spécifiées. Il n'est pas possible de spécifier des autorisations différentes pour chaque utilisateur ou rôle dans une seule requête. Les ressources sur lesquelles les autorisations sont supprimées peuvent être différentes pour différents utilisateurs ou rôles selon que les utilisateurs ou les rôles disposent d'autorisations sur des ressources spécifiques (et leurs ressources dépendantes) ou non.

Flux d'autorisation ACL

L'utilisateur effectuant cette requête ne pourra supprimer que les autorisations sur les ressources dans les dossiers (ou sous-dossiers) du référentiel sur lesquels il dispose d'autorisations WRITE.

Format d'URL POST HTTP

Le format suivant est utilisé pour les requêtes HTTP POST demandant la suppression d'une ACL de la ressource spécifiée :

HTTP POST URL:  /acl/resources/delete
POST DATA:  {
   "users":[
      "user1"
   ],
   "roles":[
      "role1"
   ],
   "resources":[
      "/Samples/NamedTiles/WorldTile"
   ],
   "permissions":[
      "EXECUTE"
   ]
}
POST HEADER: Content-Type:application/json 

Paramètres

Paramètre Type Obligatoire Description
users Chaîne Oui Spécifie une liste d'utilisateurs. Obligatoire uniquement lorsque les rôles ne sont pas indiqués dans la requête.
roles Chaîne Oui Spécifie une liste de rôles. Obligatoire uniquement lorsque les utilisateurs ne sont pas indiqués dans la requête.
resources Chaîne Oui Spécifie une liste de ressources.
permissions Chaîne Oui Spécifie l'autorisation à supprimer de la ressource. L'autorisation peut uniquement être EXECUTE.
recursetoData Chaîne Non Indique si la suppression des autorisations ACL est propagée aux tables nommées dépendantes.

Résultat

Une liste de ressources (et leurs ressources dépendantes) sur lesquelles l'autorisation EXECUTE a été supprimée pour les utilisateurs et rôles spécifiés.

Exemple pour POST

URL de requête
http://<server>:<port>/rest/Spatial/AccessControlService/acl/resources/delete

Corps de la requête

{
   "users":[
      "user1"
   ],
   "roles":[
      "role1"
   ],
   "resources":[
      "/Samples/NamedTiles/WorldTile"
   ],
   "permissions":[
      "EXECUTE"
   ]
}

Réponse

{
   "users":[
      {
         "name":"user1",
         "resources":[
            "/Samples/NamedTiles/WorldTile",
            "/Samples/NamedLayers/WorldcapFeatureLayer",
            "/Samples/NamedLayers/WorldFeatureLayer",
            "/Samples/NamedMaps/WorldMap",
            "/Samples/NamedLayers/Grid15FeatureLayer",
            "/Samples/NamedLabelSources/WorldCountriesLabelSource",
            "/Samples/NamedLayers/OceanFeatureLayer",
            "/Samples/NamedTables/OceanTable",
            "/Samples/NamedTables/Grid15Table",
            "/Samples/NamedTables/WorldcapTable",
            "/Samples/NamedTables/WorldTable"
         ]
      }
   ],
   "roles":[
      {
         "name":"role1",
         "resources":[
            "/Samples/NamedTiles/WorldTile",
            "/Samples/NamedLayers/WorldcapFeatureLayer",
            "/Samples/NamedLayers/WorldFeatureLayer",
            "/Samples/NamedMaps/WorldMap",
            "/Samples/NamedLayers/Grid15FeatureLayer",
            "/Samples/NamedLabelSources/WorldCountriesLabelSource",
            "/Samples/NamedLayers/OceanFeatureLayer",
            "/Samples/NamedTables/OceanTable",
            "/Samples/NamedTables/Grid15Table",
            "/Samples/NamedTables/WorldcapTable",
            "/Samples/NamedTables/WorldTable"
         ]
      }
   ]
}