Proveedores de notificaciones personalizados para el selector de personas (SharePoint Server 2010)
Se aplica a: SharePoint Foundation 2010, SharePoint Server 2010
Última modificación del tema: 2016-11-30
Una notificación consta de información sobre la identidad de un usuario, como por ejemplo, un nombre, una dirección de correo electrónico o la pertenencia a un grupo. Un proveedor de notificaciones en Microsoft SharePoint Server 2010 emite notificaciones que, a continuación, SharePoint Server 2010 empaqueta en tokens de seguridad para los usuarios. Cuando un usuario inicia sesión en SharePoint Server 2010, el token del usuario se valida y, a continuación, se usa para iniciar sesión en SharePoint Server 2010. Los proveedores de notificaciones se muestran en la interfaz de usuario del cuadro de diálogo Seleccionar personas y grupos en el control del selector de personas. Proporcionan la funcionalidad que se usa para buscar y seleccionar usuarios, grupos y notificaciones cuando se asignan permisos a elementos, como por ejemplo, listas, bibliotecas y sitios en SharePoint Server 2010. Para obtener más información acerca del Selector de personas, vea el tema sobre Introducción al selector de personas (SharePoint Server 2010).
En este artículo se describen los usos y las ventajas de los proveedores de notificaciones, su arquitectura, consideraciones especiales para proveedores de notificaciones personalizados y cómo planear para ellos. No se explica cómo crear o configurar proveedores de notificaciones personalizados. Para obtener información acerca de cómo crear un proveedor de notificaciones personalizado, vea los temas de procedimientos de notificaciones (https://go.microsoft.com/fwlink/?linkid=207578&clcid=0xC0A) y el tema sobre la creación de proveedores de notificaciones en SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=211324&clcid=0xC0A).
Antes de leer este artículo, debe comprender los conceptos que se describen en Planeación de los métodos de autenticación (SharePoint Server 2010) y en el tema sobre el rol de las notificaciones (https://go.microsoft.com/fwlink/?linkid=208326&clcid=0xC0A). Para obtener más información acerca de la autenticación basada en notificaciones, vea el tema sobre la identidad basada en notificaciones de SharePoint (https://go.microsoft.com/fwlink/?linkid=196647&clcid=0xC0A) y la guía para el control de identidad y acceso basado en notificaciones (https://go.microsoft.com/fwlink/?linkid=187911&clcid=0xC0A).
En este artículo:
Usos y ventajas
Arquitectura
Acerca de los proveedores de notificaciones personalizados
Implementación y configuración de proveedores de notificaciones personalizados
Uso de notificaciones personalizadas en varias granjas de servidores
Consideraciones para los proveedores de notificaciones personalizados
Usos y ventajas
Un proveedor de notificaciones de SharePoint Server 2010 se usa principalmente por dos motivos:
Para aumentar las notificaciones
Para proporcionar la resolución de nombres
En el rol de aumento, un proveedor de notificaciones aumenta un token de usuario con notificaciones adicionales durante el inicio de sesión. Para obtener más información acerca del aumento de notificaciones, vea el tema sobre los proveedores de notificaciones (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0xC0A).
En el rol de selección, un proveedor de notificaciones enumera, resuelve, busca y determina la presentación fácil de entender de usuarios, grupos y notificaciones en el selector de personas. La selección de notificaciones permite que una aplicación exponga notificaciones en el selector de personas, como por ejemplo, al configurar la seguridad de un sitio de SharePoint o un servicio de SharePoint. Para obtener más información acerca del selector de personas, vea el tema sobre Introducción al selector de personas (SharePoint Server 2010).
Se pueden usar los proveedores de notificaciones que se incluyen con SharePoint Server 2010 o se pueden crear proveedores de notificaciones personalizados para proporcionar notificaciones adicionales en el token de seguridad para un usuario o para conectarse a otros orígenes de notificaciones. Por ejemplo, si tiene una aplicación de CRM que contiene roles que no se encuentran en el repositorio del usuario en Active Directory, puede crear un proveedor de notificaciones personalizado para conectarse a esa base de datos y agregar datos de los roles CRM al token de notificaciones original del usuario. Para obtener más información acerca de escenarios de uso de los proveedores de notificaciones vea el tema sobre los proveedores de notificaciones (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0xC0A).
Arquitectura
Cuando una aplicación web está configurada para usar autenticación basada en notificaciones, SharePoint Server 2010 usa automáticamente dos proveedores de notificaciones predeterminados:
La clase SPSystemClaimProvider (https://go.microsoft.com/fwlink/?linkid=210011&clcid=0xC0A) proporciona información sobre las notificaciones relacionadas con el conjunto o granja de servidores donde está instalado SharePoint Server 2010.
La clase SPAllUserClaimProvider (https://go.microsoft.com/fwlink/?linkid=210012&clcid=0xC0A) proporciona una notificación Todos los usuarios que se muestra en el cuadro de diálogo Seleccionar personas y grupos del selector de personas.
Según el método de autenticación seleccionado para una zona de una aplicación web, SharePoint Server 2010 también usa uno o varios de los proveedores de notificaciones predeterminados enumerados en la tabla siguiente.
Método de autenticación | Proveedor de notificaciones |
---|---|
Autenticación de Windows |
SPActiveDirectoryClaimProvider (https://go.microsoft.com/fwlink/?linkid=208325&clcid=0xC0A) |
Autenticación basada en formularios |
SPFormsClaimProvider (https://go.microsoft.com/fwlink/?linkid=210013&clcid=0xC0A) |
Autenticación basada en token de lenguaje de marcado de aserción de seguridad (SAML) |
SPTrustedClaimProvider (https://go.microsoft.com/fwlink/?linkid=210014&clcid=0xC0A) |
Estos proveedores de notificaciones se muestran en el cuadro de diálogo Seleccionar personas y grupos del selector de personas. Puede ver una lista de los proveedores de notificaciones de una granja de servidores usando el cmdlet Get-SPClaimProvider de Windows PowerShell.
Nota
Cuando una aplicación web está configurada para usar autenticación basada en tokens SAML, la clase SPTrustedClaimProvider no proporciona funcionalidad de búsqueda para el control del selector de personas. Cualquier texto escrito en el control de selector de personas se mostrará automáticamente como si se hubiera resuelto, independientemente de si es un usuario, un grupo o una notificación válidos. Si la solución de SharePoint Server 2010 usará la autenticación basada en tokens SAML, debe planear crear un proveedor de notificaciones personalizado para implementar la resolución de nombres y búsqueda personalizada.
Los proveedores de notificaciones se registran en una granja de servidores como características implementadas en la granja, y su ámbito se encuentra a nivel de la granja. Cada objeto del proveedor de notificaciones usa la clase SPClaimProviderDefinition para incluir información acerca del proveedor de notificaciones, como por ejemplo, el nombre para mostrar, la descripción, el ensamblado y el tipo. Dos propiedades importantes de la clase SPClaimProviderDefinition son IsEnabled e IsUsedByDefault. Estas propiedades determinan si un proveedor de notificaciones registrado está habilitado para su uso en la granja de servidores y si el proveedor de notificaciones se usa de forma predeterminada en una zona específica. De manera predeterminada, todos los proveedores de notificaciones se habilitan cuando se implementan en una granja de servidores. Para obtener información acerca de la clase SPClaimProviderDefinition, vea el tema sobre la clase SPClaimProviderDefinition (https://go.microsoft.com/fwlink/?linkid=207595&clcid=0xC0A).
Para obtener más información acerca de las zonas y la autenticación, vea Planeación de los métodos de autenticación (SharePoint Server 2010).
Para obtener información acerca de cómo escribir un proveedor de notificaciones personalizado, vea el tema sobre la creación de proveedores de notificaciones personalizados en SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=211324&clcid=0xC0A) y el tutorial sobre cómo escribir proveedores de notificaciones para SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207589&clcid=0xC0A). Para obtener información acerca de cómo invalidar el proveedor de notificaciones predeterminado, vea el procedimiento para invalidar el proveedor de resolución de nombres y notificaciones predeterminado para SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207591&clcid=0xC0A).
Acerca de los proveedores de notificaciones personalizados
De manera predeterminada, la información que se resuelve en el selector de personas cuando se realiza una consulta depende de la información suministrada por el proveedor de notificaciones. No se puede cambiar la información que se proporciona y cómo se muestra cuando se usa un proveedor de notificaciones integrado. Para hacerlo, debe pedir a un programador que cree un proveedor de notificaciones personalizado que satisfaga las necesidades de la solución para buscar y seleccionar usuarios, grupos y notificaciones cuando un usuario asigna permisos a elementos, como por ejemplo, un sitio, una lista o una biblioteca.
Por ejemplo, si la aplicación web usa la autenticación SAML y, además, desea resolver usuarios de Active Directory, deberá crear un proveedor de notificaciones personalizado. Para obtener ejemplos adicionales de escenarios de uso de proveedores de notificaciones, vea el tema sobre los proveedores de notificaciones (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0xC0A).
Cuando se crea un proveedor de notificaciones personalizado, puede controlar qué información se muestra y qué resultados se devuelven en respuesta a una consulta desde el control del selector de personas. De manera predeterminada, se configura la aplicación web para usar autenticación basada en notificaciones y, a continuación, se registra el proveedor de notificaciones en el servidor.
Nota
No se puede controlar el orden en que se muestran los proveedores de notificaciones en el cuadro de diálogo Seleccionar personas y grupos en el selector de personas.
Para obtener información acerca de cómo crear un proveedor de notificaciones personalizado, vea el procedimiento para la creación de proveedores de notificaciones (https://go.microsoft.com/fwlink/?linkid=207588&clcid=0xC0A) y el tutorial sobre cómo escribir proveedores de notificaciones para SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207589&clcid=0xC0A). Para obtener información acerca de cómo invalidar el proveedor de notificaciones predeterminado, vea el procedimiento para invalidar el proveedor de resolución de nombres y notificaciones predeterminado para SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207591&clcid=0xC0A).
Implementación y configuración de proveedores de notificaciones personalizados
De manera predeterminada, al registrar un proveedor de notificaciones personalizado en la granja de servidores, las propiedades IsEnabled e IsUsedByDefault están establecidas en True. A menos que la propiedad IsUsedByDefault se establezca en False, se muestra el proveedor de notificaciones personalizado en el cuadro de diálogo Seleccionar personas y grupos en el selector de personas para todas las zonas. En función del número de zonas necesarias para su solución de SharePoint Server 2010, los métodos de autenticación usados por cada zona y los usuarios para cada zona, puede desear limitar las zonas en que se muestra el proveedor de notificaciones personalizado en el selector de personas.
Debido a que los proveedores de notificaciones tienen su ámbito a nivel de la granja de servidores y están habilitados al nivel de la zona, debe planear cuidadosamente las zonas en que desea que se muestre el proveedor de notificaciones personalizado. En general, debe asegurarse de que la propiedad IsUsedByDefault se establezca en False y, a continuación, configurar la clase SPIisSettings para cada zona en la que desee usar el proveedor de notificaciones personalizado. Para configurar un proveedor de notificaciones personalizado para seleccionar zonas, puede crear un script de Windows PowerShell que establezca el proveedor de notificaciones para una zona mediante la propiedad SPIisSettings.ClaimsProviders, o bien puede crear una aplicación personalizada que permita habilitar un proveedor de notificaciones personalizado para las zonas que seleccione. Para obtener información acerca de la propiedad SPIisSettings.ClaimsProvider, vea el tema sobre la propiedad SPIisSettings.ClaimsProvider (https://go.microsoft.com/fwlink/?linkid=207597&clcid=0xC0A). Para obtener información sobre cómo crear una aplicación personalizada para configurar proveedores de notificaciones para las zonas seleccionadas, vea la entrada de blog de TechNet sobre la configuración de un proveedor de notificaciones personalizado para usar solo en zonas seleccionadas en SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207592&clcid=0xC0A).
Por ejemplo, considere un escenario donde hay dos aplicaciones web. La primera aplicación web, PartnerWeb, tiene dos zonas: una intranet, que usa la autenticación basada en notificaciones de Windows, y una extranet, que usa la autenticación basada en formularios. Esta zona se usa para la colaboración entre empleados y socios. La segunda aplicación web, PublishingWeb, tiene una sola zona, que usa la autenticación basada en formularios, y es un sitio de publicación en Internet para los empleados, socios comerciales y socios clientes. Ahora, supongamos que para la zona de extranet en PartnerWeb, desea que los empleados puedan colaborar con socios comerciales, pero no con socios clientes. Para ello, escriba un proveedor de notificaciones personalizado que determine si el usuario actual es un socio comercial o un socio cliente, según la identidad del usuario. En este ejemplo, los usuarios de fabrikam.com son socios comerciales, mientras que los usuarios de contoso.com son socios clientes. Cuando un usuario que sea un socio comercial se autentica en la aplicación web PartnerWeb, se agrega una notificación para un rol llamado BusinessPartner al token de notificación. Para asegurarse de que los socios clientes nunca se agreguen al sitio de colaboración de extranet, agregue una directiva de aplicación web en la aplicación web PartnerWeb para la zona de extranet que deniegue explícitamente el acceso a cualquier usuario que tenga una notificación para un rol llamado CustomerPartner. El proveedor de notificaciones personalizado también necesitaría implementar compatibilidad con búsqueda y escritura para que la directiva de aplicación web resuelva la notificación del rol CustomerPartner, de modo que pueda agregarse a la directiva de aplicación web. Finalmente, para habilitar esta funcionalidad en la zona de extranet, debe configurar la clase SPIisSettings para que dicha zona use el proveedor de notificaciones personalizado. En el siguiente diagrama se ilustran los métodos de autenticación y la configuración del proveedor de notificaciones para cada aplicación web y zona.
Nota
En el sitio web de Administración central, se muestran todos los proveedores de notificaciones en el cuadro de diálogo Seleccionar personas y grupos del selector de personas, independientemente de si la propiedad IsUsedByDefault está establecida en True.
Puede establecer la propiedad IsUsedByDefault mediante su configuración en un receptor de característica que cree para su proveedor de notificaciones personalizado. Para obtener información acerca de cómo usar un receptor de característica para implementar un proveedor de notificaciones personalizado, vea el ejemplo de receptor de características para implementar un proveedor de notificaciones (https://go.microsoft.com/fwlink/?linkid=207590&clcid=0xC0A).
También se puede invalidar la configuración de las propiedades IsEnabled e IsUsedByDefault mediante el cmdlet Set-SPClaimProvider de Windows PowerShell.
Importante
Si se cambia la propiedad IsEnabled a False, se deshabilitará al proveedor de notificaciones para toda la granja de servidores. Esto puede resultar útil si necesita solucionar problemas que podrían estar causados por un proveedor de notificaciones personalizado. No obstante, en general, la propiedad IsEnabled debe establecerse en True.
Uso de notificaciones personalizadas en varias granjas de servidores
Los valores de notificación son una combinación de la propia notificación, el nombre del proveedor de notificaciones y el orden en que se instaló el proveedor de notificaciones en el servidor. Por lo tanto, si desea usar una notificación en varias granjas de servidores o entornos, debe instalar los proveedores de notificaciones en cada granja en el mismo orden en que desee usar la notificación. Cuando haya instalado un proveedor de notificaciones personalizado en una granja de servidores y desee usar la misma notificación en granjas adicionales, siga estos pasos.
Registre los proveedores de notificaciones en las granjas de servidores adicionales en el mismo orden en que se registraron en la primera granja de servidores.
Realice una copia de seguridad de la primera granja de servidores. Para obtener información acerca de cómo hacer una copia de seguridad de una granja de servidores, vea Copia de seguridad de una granja de servidores (SharePoint Server 2010).
Use la copia de seguridad de la primera granja de servidores para restaurar las demás granjas de servidores. Para obtener información acerca de cómo restaurar una granja de servidores, vea Restauración de una granja de servidores (SharePoint Server 2010).
Consideraciones para los proveedores de notificaciones personalizados
Cuando planee usar proveedores de notificaciones personalizados con el selector de personas en una solución de SharePoint, tenga en cuenta las siguientes preguntas:
¿Qué zonas tiene la aplicación web y qué métodos de autenticación se usan en cada zona?
¿Hay alguna notificación personalizada que debería agregarse a los usuarios para habilitar más escenarios de seguridad avanzados?
¿Va a usar la autenticación de SAML con un proveedor de identidades de confianza?
¿Cuál será el origen de los valores para los usuarios y los roles que se mostrarán en los resultados de las consultas del selector de personas?
¿Qué datos de notificación desea resolver en el cuadro de diálogo Seleccionar personas y grupos?
El equipo de publicación de contenido de SharePoint Server 2010 desea agradecer a Steve Peschka por su colaboración en este artículo. Su blog se puede visitar aquí (https://go.microsoft.com/fwlink/?linkid=210274&clcid=0xC0A).
See Also
Concepts
Planeación de los métodos de autenticación (SharePoint Server 2010)