Autorización del Catálogo de datos profesionales
Puede usar cualquiera de los dos perfiles de autorización para controlar el acceso de los usuarios a los datos administrados por el Catálogo de datos profesionales: autorización back-end o autorización de nivel medio.
Autorización back-end
Si el servidor back-end puede llevar a cabo autorización por usuario, puede usar la autorización back-end para controlar el acceso de los usuarios. Puede usar la autorización back-end en las siguientes situaciones:
Se usa el modelo de suplantación y delegación para la autenticación, y hay una autorización por usuario en el servidor back-end. En el modelo de suplantación y delegación, el cliente delega la autenticación al nivel medio, que suplanta al cliente y autentica en el servidor back-end en nombre del cliente. Sin embargo, si el servidor back-end no admite la autorización por usuario, es posible que deba usar otro de los mecanismos de autorización que se describen más adelante en este tema.
El servidor back-end admite la autorización por usuario, y usa autorización de nivel de aplicación, pasando el nombre de usuario en el filtro Username.
El servidor back-end ofrece limitación de peticiones de conexión u otras ventajas de rendimiento.
Autorización de nivel medio
En el modelo de autenticación de subsistema de confianza, el nivel medio autentica en el servidor back-end como una identidad fija, y el servidor back-end nunca conoce la identidad del usuario. Por lo tanto, si usa este modelo de autenticación, no puede usar la autorización back-end, incluso si el servidor back-end admite la autorización por usuario, ya que el servidor no puede autorizar cada usuario.
En estos casos, use la autorización de nivel medio del Catálogo de datos profesionales en su lugar. El Catálogo de datos profesionales está diseñado para llevar a cabo la autorización por usuario en el nivel medio. Este modelo de autorización tiene las siguientes ventajas:
Ofrece limitación de peticiones de conexión a la base de datos.
Proporciona un único modelo de autorización.
Admite escenarios donde no hay autorización por usuario en el servidor back-end.
Proporciona control de acceso granular. El Catálogo de datos profesionales permite establecer listas de control de acceso (ACL) en los siguientes niveles:
Registro de aplicación Es el objeto de nivel superior del Catálogo de datos profesionales, que controla quién puede importar o exportar las definiciones de aplicaciones al Catálogo de datos profesionales.
LobSystem
Entity
Method
MethodInstance
Además, puede tener diferentes vistas de las entidades en el Catálogo de datos profesionales y, por lo tanto, puede controlar los campos que puede ver un usuario.
Autorización back-end con UserContextFilter
El filtro UserContextFilter indica al Catálogo de datos profesionales que agregue el nombre del usuario actual a la llamada al método back-end. A continuación, el método back-end puede usar el nombre del usuario para comprobar el acceso del usuario o para limitar las instancias de entidad devueltas desde el servidor back-end por el contexto del usuario actual.
Esto resulta especialmente útil cuando las aplicaciones back-end no tienen información de autorización o no la usan por motivo de las licencias o la limitación de peticiones de conexión. En estos casos, pueden usar una cuenta de grupo para autenticar y usar el nombre de usuario pasado para determinar y controlar el acceso a los datos.
Otro escenario para usar un filtro UserContext puede ser si un autor de los metadatos crea metadatos que tomen un nombre de usuario como un filtro controlable por el usuario, y devuelve datos personales confidenciales; en este caso, el usuario puede ver los datos de otro usuario. Para evitar que esto ocurra, puede usar el filtro UserContext para pasar el nombre de usuario a la llamada a método.
Nota
El filtro UserContext es seguro y el valor del filtro no se puede reemplazar.
Para los usuarios de Microsoft Windows, el Catálogo de datos profesionales pasa la propiedad System.Security.Principal.WindowsPrincipal.Identity en el formato domainname\username. Para los clientes web, el Catálogo de datos profesionales pasa la propiedad System.Web.HttpContext.Current.User.
Objetos de metadatos con acceso controlado y protegibles individualmente
Todos los objetos de la jerarquía de objetos de metadatos del Catálogo de datos profesionales (Application, Entity, Method, MethodInstance, Parameter, TypeDescriptor, etc.) tienen una lista ACL que especifica los derechos que tienen los principales sobre el objeto. De los 13 objetos de metadatos, sólo LobSystem, Entity, Method y MethodInstance tienen su propia lista ACL que se controla de forma individual. Estos objetos se denominan objetos de metadatos protegibles individualmente. Otros objetos de metadatos heredan la lista ACL de su objeto primario inmediato y se denominan objetos de metadatos con acceso controlado.
Resumen de derechos
La siguiente tabla muestra los derechos que el administrador o alguien con el derecho Administrar permisos puede establecer en una aplicación de Catálogo de datos profesionales.
Importante
Después de cambiar los permisos de los usuarios en el Catálogo de datos profesionales, debe volver a ejecutar el rastreo para que puedan buscar en los datos profesionales. La razón es que las listas ACL se rastrean junto con los datos y, por lo tanto, no estarán actualizadas si las cambia.
Derecho | Se aplica a | Descripción |
---|---|---|
Edición |
Objetos de metadatos con control de acceso |
|
Administrar permisos |
Objetos de metadatos protegibles individualmente |
|
Ejecutar (Ver) |
MethodInstance |
|
Seleccionable en clientes |
Aplicación y entidad |
|
Vea también
Otros recursos
Autenticación del Catálogo de datos profesionales
Procedimiento para agregar una entrada de control de acceso a un objeto de metadatos
Procedimiento para obtener la Lista de control de acceso para el objeto de metadatos