Lista de ACL por carpeta
Información general
Esta operación devuelve permisos para todos los usuarios y roles para todos los recursos con nombre asignado en las carpetas especificadas y sus subcarpetas. Los permisos para las subcarpetas también se devuelven en la respuesta.Para cada recurso, la respuesta contiene los usuarios y los roles que tienen permisos sobre el recurso, y para cada usuario o rol, contiene los permisos específicos aplicados.
- En el caso de tablas con nombre asignado, los permisos pueden ser EJECUTAR, CREAR, MODIFICAR o ELIMINAR
- En el caso de las carpetas de repositorio, los permisos pueden ser de LECTURA o ESCRITURA
- En el caso de otros recursos con nombre asignado el permiso puede ser EJECUTAR
Flujo de autorización de ACL
El usuario que hace esta solicitud solo podrá incluir 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 GET
El siguiente formato se utiliza para solicitudes HTTP GET con el propósito de incluir listas ACL por carpetas:
HTTP GET http://<server>:<port>/rest/Spatial/AccessControlService/acl/folders/repositoryFolderPath
Parámetros
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
repositoryFolderPath | Cadena | Sí | Especifica la ruta de la carpeta de repositorio para la que se devolverán las listas ACL. |
Formato de dirección URL de HTTP POST
El siguiente formato se utiliza para solicitudes HTTP POST con el propósito de incluir listas ACL por carpetas:
HTTP POST http://<server>:<port>/rest/Spatial/AccessControlService/acl/folders/
Formato de dirección URL de HTTP POST
El siguiente formato se utiliza para solicitudes HTTP POST:
HTTP POST URL: /acl/folders
POST DATA: {
"resources":[
"/Samples/NamedTiles/",
"/Samples/NamedMaps/"
],
"resourceType":"RepositoryFolder"
}
POST HEADER: Content-Type:application/json
- La carpeta de repositorio debe tener una barra diagonal final en la solicitud POST, o de lo contrario se devolverá un error.
Devolución
Devuelve permisos para todos los usuarios y para todos los recursos con nombre asignado en las carpetas especificadas y sus subcarpetas.
Ejemplo de operación GET
Dirección URL de solicitud
http://<server>:<port>/rest/Spatial/AccessControlService/acl/folders/Samples
Respuesta
{ "resourceAclList":[ { "name":"/Samples/NamedTiles/", "resourceType":"RepositoryFolder", "users":[ { "name":"user1", "permissions":[ "READ", "WRITE" ] } ], "roles":[ { "name":"role1", "permissions":[ "READ", "WRITE" ] } ] }, { "name":"/Samples/", "resourceType":"RepositoryFolder", "users":[ { "name":"user1", "permissions":[ "READ", "WRITE" ] } ], "roles":[ { "name":"role1", "permissions":[ "READ", "WRITE" ] } ] }, { "name":"/Samples/NamedTiles/WorldTile", "resourceType":"NamedTile", "users":[ { "name":"user1", "permissions":[ "EXECUTE" ] } ], "roles":[ { "name":"role1", "permissions":[ "EXECUTE" ] } ] } ] }
Ejemplo de operación POST
Dirección URL de solicitud
http://<server>:<port>/rest/Spatial/AccessControlService/acl/folders
Cuerpo de la solicitud
{ "resources":[ "/Samples", "/InvalidFolder" ] }
Respuesta
{ "resourceAclList":[ { "name":"/InvalidFolder/", "resourceType":"RepositoryFolder", "error":"RepositoryEx_PathNotFound: Path was not found - /InvalidFolder/" }, { "name":"/Samples/NamedTiles/", "resourceType":"RepositoryFolder", "users":[ { "name":"user1", "permissions":[ "READ", "WRITE" ] } ], "roles":[ { "name":"role1", "permissions":[ "READ", "WRITE" ] } ] }, { "name":"/Samples/", "resourceType":"RepositoryFolder", "users":[ { "name":"user1", "permissions":[ "READ", "WRITE" ] } ], "roles":[ { "name":"role1", "permissions":[ "READ", "WRITE" ] } ] }, { "name":"/Samples/NamedTiles/WorldTile", "resourceType":"NamedTile", "users":[ { "name":"user1", "permissions":[ "EXECUTE" ] } ], "roles":[ { "name":"role1", "permissions":[ "EXECUTE" ] } ] } ] }