Lista de permisos para conjuntos de datos

Información general

Esta operación devuelve los permisos para una tabla con nombre asignado del usuario (o sus roles). Lleva la ruta de acceso completa de una o más tablas con nombre asignado para las que el usuario desea obtener permisos de lista. Los permisos pueden ser EJECUTAR, CREAR, MODIFICAR o ELIMINAR.

Entre los permisos devueltos se incluyen los otorgados directamente al usuario o a cualquiera de sus roles. Los permisos EJECUTAR también se pueden heredar de los permisos que un usuario o sus roles tienen en las carpetas principales.

Las siguientes reglas comerciales pueden ayudar a comprender una respuesta determinada:

  • Si los permisos están vacíos para el recurso, puede haber una o más razones, entre las que se incluyen las siguientes:
    • El usuario no tiene permiso EJECUTAR en una tabla con nombre asignado
    • Se especificó un tipo de recurso diferente
    • Se especificó un recurso inexistente
  • Si se omite la lista de tablas, entonces se devuelven todas las tablas con nombre asignado para las que la muestra del usuario especificado tiene permisos: EJECUTAR, CREAR, MODIFICAR o ELIMINAR
  • Si el usuario no tiene permisos en ninguna de las tablas, se devolverá una respuesta vacía

Flujo de autorización de ACL

El usuario que hace esta solicitud obtendrá permisos solo para los recursos en los que tiene al menos permisos para EJECUTAR.

Formato de dirección URL de HTTP GET

El siguiente formato se utiliza para solicitudes HTTP GET para todas las tablas:

HTTP GET http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables

El siguiente formato se utiliza para solicitudes HTTP GET para tablas especificadas:

HTTP GET http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables/namedTablePath

Parámetros

Parámetro Tipo Requerido Descripción
namedTablePath Cadena No Especifica la ruta de la tabla con nombre asignado para la que se devolverán los permisos de conjuntos de datos.

Formato de dirección URL de HTTP POST

El siguiente formato se utiliza para solicitudes HTTP POST:

HTTP POST URL: /permissions/tables
POST BODY: {
   "resources":[
      "/Samples/NamedTables/WorldTable",
      "/Samples/NamedTables/USA"
   ]
}
POST HEADER: Content-Type:application/json

Devolución

Devuelve una lista de tablas con los permisos que tiene un usuario.

Ejemplo de operación GET

En este ejemplo se solicitan todos los permisos de un usuario en "/Samples/NamedTables/WorldTable".

Dirección URL de solicitud

http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables/Samples/NamedTables/WorldTable

Respuesta

{
   "name":"/Samples/NamedTables/WorldTable",
   "permissions":[
      "EXECUTE",
      "CREATE",
      "MODIFY",
      "DELETE"
   ]
}

Ejemplo de operación POST

Esta solicitud devuelve una lista de los permisos que tiene el usuario sobre las tablas especificadas en el cuerpo de la solicitud:

Dirección URL de solicitud

http://<server>:<port>/rest/Spatial/AccessControlService/permissions/tables

Cuerpo de la solicitud

{
   "resources":[
      "/Samples/NamedTables/USA",
      "/Samples/NamedTables/WorldTable"
   ]
}

Respuesta

{
   "resourcePermissions":[
      {
         "name":"/Samples/NamedTables/USA",
         "permissions":[
            "EXECUTE",
            "CREATE",
            "MODIFY",
            "DELETE"
         ]
      },
      {
         "name":"/Samples/NamedTables/WorldTable",
         "permissions":[
            "EXECUTE",
            "CREATE",
            "MODIFY",
            "DELETE"
         ]
      }
   ]
}