Quitar un recurso de ACL

Información general

Esta operación elimina permisos NamedResource.EXECUTE de los recursos especificados de usuarios y roles específicos.

Las siguientes reglas comerciales pueden ayudar a comprender una respuesta determinada:
  • ResourceList contiene un tipo de recurso: todos los mapas con nombre asignado o todas las capas con nombre asignado.
  • La eliminación de permisos siempre se propaga hasta los recursos principales y los recursos dependientes. Por ejemplo, mapas con nombre asignado a mosaicos con nombre asignado mientras se propagan de manera ascendente, y mapas con nombre asignado a capas de grupo con nombre asignado, a capas con nombre asignado, a capas con etiquetas con nombre asignado, a fuentes de etiquetas con nombre asignado mientras se propagan de manera descendente.
  • Cuando se propaga una eliminación de permisos de manera descendente, los permisos no se eliminarán si un recurso de nivel inferior necesita la lista ACL para que otro recurso de alto nivel funcione. Por ejemplo, si un usuario tiene permiso para dos mapas con nombre asignado que hacen referencia a la misma capa con nombre asignado y, a continuación, se elimina el permiso de un mapa con nombre asignado, no se propagará el cambio a la capa, ya que el usuario todavía puede procesar el segundo mapa con nombre asignado que hace referencia a esa capa.
  • Si el parámetro opcional recurseToData está establecido en verdadero, entonces la eliminación del permiso EJECUTAR también se propaga a las tablas con nombre asignado dependientes. Si la tabla tiene permisos Dataset.DML CREAR, MODIFICAR o ELIMINAR, entonces estos se eliminan, ya que el usuario no puede generar consultas en la tabla si la variable EJECUTAR no está presente.
  • En el caso de los mosaicos con nombre asignado WMTS, la eliminación de permisos no se propaga a recursos dependientes.
  • Se elimina el permiso para todos los usuarios y roles en los recursos especificados. No es posible especificar diferentes permisos para cada usuario o función en una única solicitud. Los recursos en los que se eliminan los permisos podrían ser diferentes para distintos usuarios o roles según si los usuarios o roles tienen o no permiso para recursos especificados (y sus recursos dependientes).

Flujo de autorización de ACL

El usuario que hace esta solicitud solo podrá eliminar permisos de recursos dentro de las carpetas (o subcarpetas) de repositorio para las que tenga permiso de ESCRITURA.

Formato de dirección URL de HTTP POST

El siguiente formato se utiliza para solicitudes HTTP POST con el propósito de eliminar una lista ACL del recurso especificado:

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

Parámetros

Parámetro Tipo Requerido Descripción
usuarios Cadena Especifica una lista de usuarios. Solo es necesario cuando los roles no se indican en la solicitud.
rol Cadena Especifica una lista de roles. Solo es necesario cuando los usuarios no se indican en la solicitud.
resources Cadena Especifica una lista de recursos.
permissions Cadena Especifica el permiso que se eliminará del recurso. El permiso solo puede ser EJECUTAR.
recursetoData Cadena No Especifica si la eliminación de los permisos ACL se propaga a las tablas con nombre asignado dependientes.

Devolución

Una lista de recursos (y sus recursos dependientes) a los que se les eliminó el permiso EJECUTAR para los usuarios y roles especificados.

Ejemplo de operación POST

Dirección URL de solicitud
http://<server>:<port>/rest/Spatial/AccessControlService/acl/resources/delete

Cuerpo de la solicitud

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

Respuesta

{
   "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"
         ]
      }
   ]
}