Autorización del servicio Conectividad a datos empresariales
Última modificación: jueves, 15 de abril de 2010
Hace referencia a: SharePoint Server 2010
En este artículo
Autorización back-end
Autorización de nivel medio
Autorización back-end con UserContextFilter
Objetos de metadatos con acceso controlado y protegibles individualmente
Resumen de derechos
Puede usar cualquiera de los dos patrones de autorización para controlar el acceso de los usuarios a los datos administrados por Servicios de conectividad empresarial (BCS) de Microsoft: autorización back-end o autorización de nivel intermedio.
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 intermedio, 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 el otro mecanismo de autorización descrito 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 intermedio del Servicio de conectividad de datos profesionales (BDC) en su lugar. BDC está diseñado para llevar a cabo la autorización por usuario en el nivel intermedio. Este modelo de autorización tiene las siguientes ventajas:
Agrupación de conexiones a la base de datos.
Un único modelo de autorización.
Compatibilidad con escenarios donde no hay autorización por usuario en el servidor back-end.
Control de acceso granular. BDC permite establecer listas de control de acceso (ACL) en los siguientes niveles:
Catálogo de metadatos Es el objeto de nivel superior de BDC, que controla quién puede importar o exportar modelos BDC.
LobSystem
Entity
Method
MethodInstance
Además, puede tener diferentes vistas de las entidades de BDC. Por lo tanto, puede controlar los campos que puede ver un usuario.
Autorización back-end con UserContextFilter
El filtro UserContextFilter indica a BDC que agregue el nombre del usuario actual a la llamada de método back-end. A continuación, el método back-end puede usar el nombre de usuario para comprobar el acceso del usuario o para limitar las instancias de la 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 licencias o 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 metadatos crea metadatos que tomen un nombre de usuario como un filtro controlable por el usuario, y devuelve datos personales confidenciales; en este caso, un usuario podría 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 de método.
Nota
El filtro UserContext es seguro y el valor del filtro no se puede reemplazar.
Para los usuarios de Windows, BDC pasa la propiedad System.Security.Principal.WindowsPrincipal.Identity en el formato nombrededominio\nombredeusuario.
Objetos de metadatos con acceso controlado y protegibles individualmente
Todos los objetos de la jerarquía de objetos de metadatos de BDC (Application, Entity, Method, MethodInstance, Parameter, TypeDescriptor, etc.) tienen una ACL que especifica los derechos que tienen las entidades de seguridad sobre el objeto. De los 13 objetos de metadatos, solo LobSystem, Entity, Method y MethodInstance tienen su propia ACL que se controla de forma individual. Estos objetos se denominan objetos de metadatos protegibles individualmente. Otros objetos de metadatos heredan la ACL de su objeto primario inmediato y se denominan objetos de metadatos con acceso controlado.
Resumen de derechos
En la siguiente tabla se muestran los derechos que el administrador o alguien con el derecho Administrar permisos puede establecer en una aplicación de BDC.
Importante |
---|
Después de cambiar los permisos de los usuarios en BDC, debe volver a ejecutar el rastreo para que les sea posible buscar en los datos profesionales. La razón es que las ACL se rastrean con los datos y, por lo tanto, no estarán actualizadas si las cambia. |
Tabla 1. Resumen de los derechos que pueden establecerse en una aplicación de BDC
Derecho |
Se aplica a |
Descripción |
---|---|---|
Edición |
Objetos de metadatos con control de acceso |
|
Establecer permisos |
Objetos de metadatos protegibles individualmente |
|
Ejecutar (Ver) |
MethodInstance |
|
Seleccionable en clientes |
Aplicación y entidad |
|