Sei sulla pagina 1di 43

Introduccin a los Servicios de federacin de Active Directory

El rol de servidor Servicios de federacin de Active Directory (AD FS) de los sistemas operativos
Windows Server 2008 y Windows Server 2008 R2 se puede usar para crear una solucin de acceso a la
identidad altamente extensible, escalable para Internet y segura que puede funcionar en diversas
plataformas, como los entornos de Windows y de otros tipos.
En las siguientes secciones se proporciona ms informacin acerca de AD FS, incluida una introduccin a la
tecnologa as como datos sobre su instalacin y administracin.

AD FS
AD FS es una solucin de acceso e identidad que proporciona a los clientes basados en un explorador
(internos o externos con respecto a su red) un acceso eficaz de "una sola pregunta" a una o varias
aplicaciones protegidas para Internet aun cuando las cuentas de usuario y las aplicaciones se encuentren en
redes u organizaciones completamente distintas.
Cuando una aplicacin se encuentra en una red y las cuentas de usuario en otra, es habitual que los usuarios
tengan que especificar preguntas para las credenciales secundarias al intentar obtener acceso a la aplicacin.
Estas credenciales secundarias representan la identidad de los usuarios en el entorno en que reside la
aplicacin. El servidor web que hospeda la aplicacin suele exigir estas credenciales para poder tomar la
decisin de autorizacin ms adecuada posible.
AD FS hace innecesarias estas cuentas secundarias y sus credenciales al proporcionar relaciones de
confianza que se pueden emplear para proyectar la identidad digital y los derechos de acceso de un usuario a
los asociados de confianza. En un entorno federado, cada organizacin sigue administrando sus propias
identidades, aunque tambin puede proyectar y aceptar identidades de otras organizaciones de una forma
segura.
Adems, es posible implementar servidores de federacin en varias organizaciones a fin de facilitar las
transacciones de empresa a empresa (B2B) entre organizaciones asociadas. Las asociaciones B2B federadas
identifican a los asociados comerciales como uno de los siguientes tipos de organizacin:

Organizacin de recursos: aquellas organizaciones que poseen y administran recursos que son
accesibles desde Internet pueden implementar servidores de federacin AD FS y servidores web
habilitados para AD FS que administren el acceso a los recursos protegidos de los asociados de
confianza. Estos asociados de confianza pueden incluir otras partes externas u otros departamentos o
subsidiarias de la misma organizacin.

Organizaciones de cuenta: aquellas organizaciones que poseen y administran cuentas de usuario


pueden implementar servidores de federacin AD FS que autentiquen a los usuarios locales y creen
tokens de seguridad que los servidores de federacin de la organizacin de recursos usen
posteriormente para tomar decisiones de autorizacin.

El proceso de autenticacin en una red mientras se obtiene acceso a los recursos de otra (sin que los usuarios
tengan que molestarse en repetir acciones de inicio de sesin) se conoce como inicio de sesin nico (SSO).
AD FS ofrece una solucin de SSO basada en web que autentica a los usuarios en varias aplicaciones web a
lo largo de una sesin de explorador nica.

Servicios del rol AD FS


1

El rol de servidor AD FS incluye servicios de federacin, proxy y agente web que se pueden configurar a fin
de habilitar el SSO web, federar recursos basados en web, personalizar la experiencia de acceso y
administrar la forma en que se autoriza a los usuarios existentes a obtener acceso a las aplicaciones.
Segn los requisitos de la organizacin, es posible implementar servidores que ejecuten cualquiera de los
siguientes servicios del rol AD FS:

Servicio de federacin: el Servicio de federacin est compuesto por uno o varios servidores de
federacin que comparten una directiva de confianza comn. Los servidores de federacin se usan
para enviar las solicitudes de autenticacin de las cuentas de usuario de otras organizaciones o de los
clientes que pueden encontrarse en cualquier lugar de Internet.

Proxy de Servicio de federacin: el proxy de Servicio de federacin es un proxy para el Servicio de


federacin de la red perimetral (lo que tambin se conoce como extranet o subred filtrada). El proxy
de Servicio de federacin usa protocolos WS-Federation Passive Requestor Profile (WS-F PRP) para
recopilar informacin de credenciales de usuario de los clientes del explorador y enviarla al Servicio
de federacin en su nombre.

Agente para notificaciones: el agente para notificaciones se usa en un servidor web que hospede
una aplicacin para notificaciones a fin de permitir la consulta de notificaciones de tokens de
seguridad de AD FS. Una aplicacin para notificaciones es una aplicacin Microsoft ASP.NET que
usa las notificaciones de un token de seguridad de AD FS para tomar decisiones de autorizacin y
personalizar aplicaciones.

Agente basado en tokens de Windows: el agente basado en tokens de Windows se usa en un


servidor web que hospeda una aplicacin basada en tokens de Windows NT para permitir la
conversin de un token de seguridad de AD FS en un token de acceso de nivel de suplantacin de
Windows NT. Una aplicacin basada en tokens de Windows NT es una aplicacin que emplea
mecanismos de autorizacin basados en Windows.

Instalacin del rol AD FS


Una vez instalado el sistema operativo, aparece una lista de tareas de configuracin iniciales. Para instalar
AD FS, haga clic en Agregar roles en la lista de tareas y, a continuacin, en Servicios de federacin de
Active Directory.
Para obtener instrucciones detalladas acerca de la instalacin y configuracin de un entorno de laboratorio
de prueba de AD FS, vea la gua paso a paso de AD FS en Windows Server 2008 R2, en
http://go.microsoft.com/fwlink/?LinkId=133009 (puede estar en ingls).

Administracin del rol AD FS


Los roles de servidor se pueden administrar con los complementos Microsoft Management Console (MMC).
Despus de instalar AD FS, puede usar el complemento Servicios de federacin de Active Directory para
administrar los servicios del rol Servicio de federacin y proxy del Servicio de federacin. Para abrir este
complemento, haga clic en Inicio, en Herramientas administrativas y, a continuacin, en Servicios de
federacin de Active Directory.
Para administrar el agente basado en tokens de Windows, haga clic en Inicio, en Herramientas
administrativas, en Administrador de Internet Information Services (IIS) y, a continuacin, en
Conectarse a localhost.
2

Integracin con AD RMS


AD RMS y AD FS se han integrado de tal manera que las organizaciones pueden sacar partido de las
relaciones de confianza federada ya existentes para colaborar con asociados externos y compartir contenido
protegido por derechos. Por ejemplo, una organizacin que haya implementado AD RMS puede establecer la
federacin con una organizacin externa por medio de AD FS. Posteriormente, la organizacin puede usar
esta relacin para compartir contenidos protegidos por derechos entre las dos organizaciones sin necesidad
de implementar AD RMS en las dos organizaciones.

Mejor experiencia administrativa cuando se establecen confianzas federadas


En Windows Server 2003 R2 y en Windows Server 2008, los administradores de AD FS pueden crear una
confianza federada entre dos organizaciones por medio de un proceso de importacin y exportacin de
archivos de directiva o mediante un proceso manual que implica el intercambio mutuo de valores de
asociados, como URI (Identificador uniforme de recursos), tipos de notificacin, asignaciones de
notificaciones, nombres para mostrar, etc. El proceso manual requiere que el administrador que recibe estos
datos escriba todos los datos recibidos en las pginas apropiadas del Asistente para agregar asociados, lo
cual puede dar origen a errores tipogrficos. Adems, el proceso manual requiere que el administrador del
asociado de cuenta enve una copia del certificado de comprobacin para el servidor de la federacin al
administrador del asociado de recurso, para poder agregar el certificado mediante el asistente.
Aunque la capacidad para importar y exportar archivos de directiva ya estaba disponible en
Windows Server 2003 R2, la creacin de confianzas federadas entre organizaciones asociadas es ms fcil
en Windows Server 2008 gracias a la funcionalidad mejorada de exportacin e importacin basada en
directivas. Estos avances se aplicaron para mejorar la experiencia administrativa, al aumentar la flexibilidad
de la funcionalidad de importacin en el Asistente para agregar asociados. Por ejemplo, cuando se importa
una directiva de asociado, el administrador puede modificar los valores importados, mediante el Asistente
para agregar asociados, antes de que finalice el proceso del asistente. Esto incluye la capacidad de
especificar un certificado de comprobacin de asociado de cuenta diferente y la capacidad para asignar
notificaciones entrantes o salientes entre asociados.
Mediante el uso de las funciones de exportacin e importacin incluidas con AD FS en Windows
Server 2008, los administradores pueden sencillamente exportar la configuracin de sus directivas de
confianza a un archivo .xml y despus enviar el archivo al administrador asociado. Este intercambio de
archivos de directivas de asociado proporciona todos los valores de URI, tipos de notificacin, asignaciones
de notificacin y otros valores y los certificados de comprobacin que son necesarios para crear una
confianza federada entre dos organizaciones asociadas.
En la siguiente ilustracin y las instrucciones que le acompaan se muestra cmo un intercambio correcto de
directivas entre asociados (en este caso, iniciado por el administrador de la organizacin del asociado de
cuenta) puede ayudar a simplificar el proceso de establecer una confianza federada entre dos organizaciones
ficticias: A. Datum Corporation y Trey Research.

1. El administrador del asociado de cuenta especifica la opcin Exportar directiva de asociado bsico
haciendo clic con el botn secundario en la carpeta Directiva de confianza y exporta un archivo de
directiva de asociado que contiene el URI, el nombre para mostrar, el URL (Localizador uniforme de
recursos) del proxy de servidor de federacin y el certificado de comprobacin de A. Datum
Corporation. Despus el administrador asociado de cuenta enva el archivo de la directiva de
asociado (por correo electrnico u otro medio) al administrador de asociado de recurso.
2. El administrador de asociado de recurso crea un asociado de cuenta nuevo con el Asistente para
agregar asociados de cuenta y selecciona la opcin de importar un archivo de directiva de asociado
de cuenta. El administrador del asociado de recurso procede a especificar la ubicacin del archivo de
directiva de asociado y a comprobar que todos los valores presentados en las pginas del asistente
(rellenados previamente al importar la directiva) son exactos. A continuacin, el administrador
finaliza el asistente.
3. El administrador del asociado de recurso ahora puede configurar notificaciones adicionales o
configuraciones de directiva de confianza especficas del asociado de cuenta. Cuando finaliza la
4

configuracin, el administrador especifica la opcin Exportar directiva, haciendo clic con el botn
secundario en el asociado de cuenta de A. Datum Corporation. El administrador del asociado de
cuenta exporta un archivo de directiva de asociado que contiene valores como el URI, el URL del
proxy de servidor de federacin, el nombre para mostrar, los tipos de notificacin y las asignaciones
de notificacin para la organizacin Trey Research. Despus, el administrador de asociado de recurso
enva el archivo de directiva de asociado al administrador del asociado de cuenta.
4. El administrador de asociado de cuenta crea un asociado de recurso nuevo con el Asistente para
agregar asociados de recurso y selecciona la opcin de importar un archivo de directiva de asociado
de recurso. El administrador del asociado de cuenta especifica la ubicacin del archivo de directiva
de asociado de recurso y comprueba que todos los valores presentados en las pginas del asistente
(rellenados previamente por la importacin de la directiva) son exactos. A continuacin, el
administrador finaliza el asistente.
Cuando finaliza este proceso, se establece una confianza federada correcta entre los dos asociados. Los
administradores de asociado de recurso tambin pueden iniciar el proceso de importacin y exportacin de
la directiva, aunque este proceso no se explica aqu.

Qu opciones de configuracin se han agregado o modificado?


Puede configurar opciones de agentes web basados en tokens de Windows NT con el complemento
Administrador de IIS. Para admitir la nueva funcionalidad integrada con Internet Information Services
(IIS) 7.0, AD FS de Windows Server 2008 incluye actualizaciones de la interfaz de usuario para el servicio
de la funcin de agente web de AD FS. En la tabla siguiente se enumeran las diferentes ubicaciones del
Administrador de IIS en IIS 6.0 o IIS 7.0 para cada una de las pginas de propiedades de agente web de
AD FS, segn la versin de IIS que se use.

Pgina de
propiedades
de IIS 6.0

Ubicacin anterior

Ficha Agente <NOMBREDEEQUIPO>\Web


web de AD FS Sites

IIS 7.0
propiedades
pgina

Ubicacin nueva

Direccin URL
<NOMBREDEEQUIPO> (en la seccin
del Servicio de
Otros del panel central)
federacin

<NOMBREDEEQUIPO>\Web
Ficha Agente <NOMBREDEEQUIPO>\Web
Agente web de Sites\<Sitio o Directorio virtual> (en la
web de AD FS Sites\<Sitio o Directorio virtual> AD FS
seccin IIS\Authentication del panel
central)
Nota
No hay diferencias importantes entre las interfaces de usuario del complemento Servicios de federacin de
Active Directory en Windows Server 2008 y el complemento Servicios de federacin de Active Directory en
Windows Server 2003 R2.

Paso 1: tareas de preinstalacin


Antes de instalar los Servicios de federacin de Active Directory (AD FS), debe configurar los cuatro
equipos de mquina virtual (VM) principales que usar para evaluar la tecnologa de AD FS.
Las tareas previas a la instalacin son:

Configuracin de los sistemas operativos y la red en los equipos

Instalacin y configuracin de AD DS

Seguridad Nota
En un entorno de produccin, use la cuenta de usuario con privilegios mnimos necesaria para realizar las
tareas requeridas. Dado que la presente gua se ha elaborado para su uso en un entorno de prueba, en
muchos procedimientos se le solicitar que use la cuenta del Administrador local o la del Administrador del
dominio para reducir el nmero de pasos necesarios.
Consulte los detalles relativos al uso correcto de las cuentas y pertenencias a grupos en Grupos
predeterminados locales y de dominio (http://go.microsoft.com/fwlink/?LinkId=83477).
Credenciales administrativas
Para realizar todas las tareas de este paso, inicie sesin en cada uno de los cuatro equipos con la cuenta
Administrador local. Para crear cuentas en los Servicios de dominio de Active Directory (AD DS), inicie
sesin con la cuenta Administrador del dominio.

Configuracin de los sistemas operativos y la red en los equipos


Use la siguiente tabla para configurar los nombres de equipo, los sistemas operativos y la red tal como se
requiere para completar los pasos de esta gua.
Importante
Antes de configurar los equipos con direcciones IP estticas, recomendamos lo siguiente:

Configurar tres VM nuevas que tengan como mnimo 512 megabytes (MB) de memoria disponible.

Completar la activacin del producto de Windows 7 y Windows Server 2008 R2 mientras cada uno
de los equipos todava tenga conexin a Internet.

Comprobar que todos los relojes de los equipos tengan establecida la misma hora, con una diferencia
de cinco minutos como mximo. Esto es importante para garantizar que las marcas de tiempo de los
tokens sean siempre vlidas.

Nombre de
equipo

Rol de cliente o
servidor de AD FS

Requisitos del sistema operativo

Configuracin Configuracin
IPv4
DNS
Direccin IP:
192.168.1.1

adfsclient

Cliente

Windows 7

Mscara de
subred:
255.255.255.0

Preferida:
192.168.1.3
Alternativa:
192.168.1.4

Direccin IP:

adfsweb

Servidor web

Windows Server 2008 R2


Standard o bien Windows
Server 2008 R2 Enterprise

192.168.1.2
Mscara de
subred:

Preferida:
192.168.1.4

255.255.255.0

Direccin IP:

adfsaccount

Servidor de federacin
Windows Server 2008 R2
y controlador de
Enterprise
dominio

192.168.1.3
Mscara de
subred:

Preferida:
192.168.1.3

255.255.255.0

Direccin IP:

adfsresource

Servidor de federacin
Windows Server 2008 R2
y controlador de
Enterprise
dominio

192.168.1.4
Mscara de
subred:

Preferida:
192.168.1.4

255.255.255.0
Asegrese de establecer en el cliente tanto la configuracin preferida como la alternativa del servidor de
Sistema de nombres de dominio (DNS). Si no se configuran los dos tipos de valores como se especifica, no
funcionar correctamente el escenario de AD FS.

Instalacin y configuracin de AD DS
En esta seccin se incluyen los siguientes procedimientos:
7

Instalacin de AD DS

Creacin de cuentas

Unin de los equipos de prueba a los dominios apropiados

Instalacin de AD DS
Puede usar el Asistente para agregar roles para crear dos bosques de Active Directory nuevos en ambos
servidores de federacin. Cuando escriba los valores en las pginas del asistente, use los nombres de
empresas y de dominios de AD DS de la tabla siguiente. Para iniciar el Asistente para agregar roles, haga
clic en Inicio, haga clic en Herramientas administrativas, haga clic en Administrador del servidor y, a
continuacin, en el panel derecho, haga clic en Agregar roles.
Importante
Configure las direcciones IP tal como se especific en la tabla anterior antes de intentar instalar AD DS. De
este modo, se asegura que los registros DNS estn configurados correctamente.
Como procedimiento recomendado de seguridad, en un entorno de produccin, los controladores de dominio
no deben funcionar tanto como servidores de federacin como controladores de dominio.

Nombre de
equipo

Nombre de la
compaa

Nombre de dominio de AD DS
(nuevo bosque)

Configuracin DNS

adfsaccount

A. Datum
Corporation

adatum.com

Instale DNS cuando se le


solicite.

adfsresource

Trey Research

treyresearch.net

Instale DNS cuando se le


solicite.

En esta gua, A. Datum representa la organizacin del asociado de cuenta y Trey Research representa la
organizacin del asociado de recurso.

Creacin de cuentas
Despus de configurar dos bosques, inicie el complemento Usuarios y equipos de Active Directory para
crear algunas cuentas que puede usar para probar y comprobar el acceso federado a travs de ambos
bosques. Configure los valores de la tabla siguiente en el equipo adfsaccount.
Objeto que se
va a crear

Nombre

Nombre de usuario

Accin

Grupo global
TreyClaimAppUsers No aplicable
de seguridad

No aplicable

Usuario

Convierta a alansh en miembro del

Alan Shen

alansh

(alansh representa al usuario


federado que tendr acceso a la
aplicacin para notificaciones.)

grupo global TreyClaimAppUsers.

Unin de los equipos de prueba a los dominios apropiados


Use los valores de la tabla siguiente para especificar qu equipos se unen a cada dominio. Realice esta
operacin en los equipos adfsclient y adfsweb.
Nota
Es posible que tenga que deshabilitar los firewalls en ambos controladores de dominio para poder unir los
equipos siguientes a los dominios correspondientes.
Nombre de equipo
Se une a
adfsclient

adatum.com

adfsweb

treyresearch.net

Paso 2: instalar servicios del rol AD FS y configurar certificados


Ahora que ha configurado los equipos y los ha unido al dominio, est listo para instalar servicios de rol de
Servicios de federacin de Active Directory (AD FS) en cada uno de los servidores. Este paso incluye los
siguientes procedimientos:

Instalar el Servicio de federacin

Configurar IIS para que sea necesario SSL en ambos servidores de federacin

Instalar el agente web de AD FS

Crear, exportar e importar certificados

Credenciales administrativas
Para llevar a cabo todos los procedimientos de este paso, inicie sesin en el equipo adfsaccount y en el
equipo adfsresource con la cuenta de administrador para el dominio. Inicie sesin en el equipo adfsweb con
la cuenta de administrador local.

Instalar el Servicio de federacin


Use el procedimiento siguiente para instalar el componente Servicio de federacin de AD FS en el equipo
adfsaccount y en el equipo adfsresource. Una vez instalado el Servicio de federacin en un equipo, dicho
equipo se convierte en servidor de federacin.
Este procedimiento para instalar el Servicio de federacin le gua a travs del proceso para crear un nuevo
archivo de directiva de confianza, certificados autofirmados de Capa de sockets seguros (SSL) y certificados
de firma de tokens para cada servidor de federacin.
9

Para instalar el Servicio de federacin


1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador del servidor.
2. Haga clic con el botn secundario en Roles y, a continuacin, haga clic en Agregar roles para iniciar
el Asistente para agregar roles.
3. En la pgina Antes de comenzar, haga clic en Siguiente.
4. En la pgina Seleccionar roles de servidor, haga clic en Servicios de federacin de
Active Directory. Haga clic en Siguiente dos veces.
5. En la pgina Seleccionar servicios de rol, active la casilla Servicio de federacin. Si se le pide que
instale servicios de rol adicionales de Servidor web (IIS) o Servicio WAS (Windows Process
Activation Service), haga clic en Agregar servicios de rol requeridos para instalarlos y despus
haga clic en Siguiente.
6. En la pgina Elegir un certificado de autenticacin de servidor para cifrado SSL, haga clic en
Crear un certificado autofirmado para cifrado SSL y, a continuacin, haga clic en Siguiente.
7. En la pgina Elegir un certificado de firma de tokens, haga clic en Crear un certificado de firma
de tokens autofirmado y, a continuacin, haga clic en Siguiente.
8. En la pgina Seleccionar directiva de confianza, haga clic en Crear una nueva directiva de
confianza y, a continuacin, haga clic en Siguiente dos veces.
9. En la pgina Seleccionar servicios de rol, haga clic en Siguiente para aceptar los valores
predeterminados.
10. Compruebe la informacin de la pgina Confirmar selecciones de instalacin y haga clic en
Instalar.
11. En la pgina Resultados de la instalacin, compruebe que todo se ha instalado correctamente y
haga clic en Cerrar.

Configurar IIS para que sea necesario SSL en ambos servidores de


federacin
Use los procedimientos siguientes para configurar Internet Information Services (IIS) de forma que exija
SSL en el sitio web predeterminado de los servidores de federacin de adfsresource y adfsaccount.
Para configurar IIS en el servidor de adfsaccount
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga doble clic en ADFSACCOUNT, haga doble clic en Sitios y, a
continuacin, haga clic en Sitio web predeterminado.
3. En el panel Acciones, haga clic en Enlaces.
10

4. En el cuadro de dilogo Enlaces de sitios, haga clic en Agregar.


5. En Tipo, haga clic en https.
6. En Certificado SSL, haga clic en adfsaccount.adatum.com, en Aceptar y, a continuacin, en
Cerrar.
7. En el panel central, haga doble clic en Configuracin de SSL y active la casilla Requerir SSL.
8. En Certificados de cliente, haga clic en Aceptar y luego en Aplicar.
Para configurar IIS en el servidor adfsresource
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga doble clic en ADFSRESOURCE, haga doble clic en Sitios y, a
continuacin, haga clic en Sitio web predeterminado.
3. En el panel central, haga doble clic en Configuracin de SSL y active la casilla Requerir SSL.
4. En Certificados de cliente, haga clic en Aceptar y luego en Aplicar.

Instalar el agente web de AD FS


Use el procedimiento siguiente para instalar el agente web para notificaciones en el servidor web (adfsweb).
Para instalar el agente web de AD FS
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador del servidor.
2. Haga clic con el botn secundario en Roles y, a continuacin, haga clic en Agregar roles para iniciar
el Asistente para agregar roles.
3. En la pgina Antes de comenzar, haga clic en Siguiente.
4. En la pgina Seleccionar roles de servidor, haga clic en Servicios de federacin de
Active Directory. Haga clic en Siguiente dos veces.
5. En la pgina Seleccionar servicios de rol, active la casilla Agente para notificaciones. Si se le pide
que instale servicios de rol adicionales de Servidor web (IIS) o Servicio WAS (Windows Process
Activation Service), haga clic en Agregar servicios de rol requeridos para instalarlos y despus
haga clic en Siguiente.
6. En la pgina Servidor web (IIS), haga clic en Siguiente.
7. En la pgina Seleccionar servicios de rol, adems de las casillas activadas previamente, active las
casillas Autenticacin de asignaciones de certificado de cliente y Consola de administracin de
IIS, y luego haga clic en Siguiente.

11

La casilla Autenticacin de asignaciones de certificado de cliente instala los componentes que


debe tener IIS para crear un certificado de autenticacin de servidor autofirmado que es necesario
para este servidor.
8. Despus de comprobar la informacin en la pgina Confirmar selecciones de instalacin, haga clic
en Instalar.
9. En la pgina Resultados de la instalacin, compruebe que todo se ha instalado correctamente y
haga clic en Cerrar.

Crear, exportar e importar certificados


El factor ms importante para configurar correctamente el servidor web y los servidores de federacin es la
creacin y exportacin correctas de los certificados necesarios. Como previamente us el Asistente para
agregar roles con el fin de crear el certificado de autenticacin del servidor para ambos servidores de
federacin, todo lo que tiene que hacer ahora es crear el certificado de autenticacin del servidor para el
equipo adfsweb. Esta seccin incluye los siguientes procedimientos:

Crear un certificado de autenticacin del servidor para adfsweb

Exportar el certificado de firma de tokens desde adfsaccount a un archivo

Exportar el certificado de autenticacin del servidor adfsresource a un archivo

Importar el certificado de autenticacin del servidor para adfsresource a adfsweb

Nota
En un entorno de produccin, los certificados se obtienen de una entidad de certificacin (CA). En esta gua
se usan certificados autofirmados para la implementacin del laboratorio de pruebas.

Crear un certificado de autenticacin del servidor para adfsweb


Use el procedimiento siguiente en el servidor web (adfsweb) para crear un certificado de autenticacin del
servidor autofirmado.
Para crear un certificado de autenticacin del servidor para adfsweb
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga clic en ADFSWEB.
3. En el panel central, haga doble clic en Certificados de servidor.
4. En el panel Acciones, haga clic en Crear certificado autofirmado.
5. En el cuadro de dilogo Crear certificado autofirmado, escriba adfsweb y haga clic en Aceptar.

Exportar el certificado de firma de tokens desde adfsaccount a un archivo


Use el procedimiento siguiente en el servidor de federacin de cuentas (adfsaccount) para exportar el
certificado de firma de tokens desde adfsaccount a un archivo.
12

Para exportar el certificado de firma de tokens desde adfsaccount a un archivo


1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Servicios de federacin de Active Directory.
2. Haga clic con el botn secundario en Servicio de federacin y, a continuacin, haga clic en
Propiedades.
3. En la ficha General, haga clic en Ver.
4. En la ficha Detalles, haga clic en Copiar a archivo.
5. En la pgina ste es el asistente para exportacin de certificados, haga clic en Siguiente.
6. En la pgina Exportar la clave privada, haga clic en No exportar la clave privada y, a
continuacin, haga clic en Siguiente.
7. En la pgina Formato de archivo de exportacin, haga clic en DER binario codificado X.509
(.CER) y despus en Siguiente.
8. En la pgina Archivo que se va a exportar, escriba d:\adfsaccount_ts.cer y haga clic en Siguiente.
Nota
El certificado de firma de tokens de adfsaccount se importar en adfsresource ms tarde, cuando el Asistente
para agregar asociados de cuenta le pida el Certificado de comprobacin de asociado de cuenta. (Vea Paso 4:
configurar los servidores de federacin). En ese momento, obtiene acceso a adfsresource a travs de la red
para obtener este archivo.
9. En la pgina Finalizacin del Asistente para exportacin de certificados, haga clic en Finalizar.

Exportar el certificado de autenticacin del servidor adfsresource a un archivo


Para que se pueda establecer una correcta comunicacin entre el servidor de federacin de recursos
(adfsresource) y el servidor web (adfsweb), el servidor web debe confiar primero en la raz del servidor de
federacin de recursos.
Nota
El servidor web debe confiar en la raz del servidor de federacin de recursos porque la comprobacin de la
lista de revocacin de certificados (CRL) est habilitada de forma predeterminada. Puede deshabilitar la
comprobacin de CRL para eliminar esta dependencia, pero esta gua no proporciona los procedimientos
para hacerlo. Si deshabilita la comprobacin de CRL, puede verse comprometida la integridad de AD FS.
Por lo tanto, no es recomendable en un entorno de produccin. Para obtener ms informacin acerca de
cmo deshabilitar la comprobacin de CRL, vea el tema sobre activacin y desactivacin de la
comprobacin de CRL (http://go.microsoft.com/fwlink/?LinkId=68608 (puede estar en ingls)).
Como se usan certificados autofirmados en el escenario descrito en esta gua, el certificado de autenticacin
del servidor es la raz. Por lo tanto, debe establecer esta confianza mediante la exportacin a un archivo del
certificado de autenticacin del servidor de federacin de recursos (adfsresource) y la posterior importacin
del archivo en el servidor web (adfsweb). Para exportar el certificado de autenticacin del servidor
adfsresource a un archivo, lleve a cabo el procedimiento siguiente en adfsresource.
Para exportar el certificado de autenticacin del servidor adfsresource a un archivo
13

1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en


Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga clic en ADFSRESOURCE.
3. En el panel central, haga doble clic en Certificados de servidor.
4. En el panel central, haga clic con el botn secundario en adfsresource.treyresearch.net y, a
continuacin, haga clic en Exportar.
5. En el cuadro de dilogo Exportar certificado, haga clic en el botn .
6. En Nombre de archivo, escriba d:\adfsresource y haga clic en Abrir.
Nota
Este certificado debe importarse en adfsweb en el procedimiento siguiente. Por lo tanto, permita que
adfsweb pueda tener acceso a dicho archivo a travs de la red.
7. Escriba una contrasea para el certificado, confrmela y haga clic en Aceptar.

Importar el certificado de autenticacin del servidor para adfsresource a adfsweb


Para importar el certificado de autenticacin del servidor para adfsresource, siga el procedimiento siguiente
en el servidor web (adfsweb).
Para importar el certificado de autenticacin del servidor para adfsresource a adfsweb
1. Haga clic en Inicio, en Ejecutar, escriba mmc y, a continuacin, haga clic en Aceptar.
2. Haga clic en Archivo y, a continuacin, en Agregar o quitar complemento.
3. Seleccione Certificados, haga clic en Agregar, en Cuenta de equipo y, a continuacin, en
Siguiente.
4. Haga clic en Equipo local: (el equipo en el que se est ejecutando esta consola), en Finalizar y,
por ltimo, en Aceptar.
5. En el rbol de consola, haga doble clic en el icono Certificados (equipo local), haga doble clic en la
carpeta Entidades de certificacin raz de confianza, haga clic con el botn secundario en
Certificados, elija Todas las tareas y, a continuacin, haga clic en Importar.
6. En la pgina ste es el asistente para importacin de certificados, haga clic en Siguiente.
7. En la pgina Archivo para importar, escriba \\adfsresource\d$\adfsresource.pfx y haga clic en
Siguiente.
Nota
Es posible que tenga que asignar la unidad de red para obtener el archivo adfsresource.pfx. Tambin puede
copiar el archivo adfsresource.pfx directamente desde adfsresource en adfsweb y, a continuacin, llevar al
asistente a esa ubicacin.
8. En la pgina Contrasea, escriba la contrasea para el archivo adfsresource.pfx y haga clic en
Siguiente.
14

9. En la pgina Almacn de certificados, haga clic en Colocar todos los certificados en el siguiente
almacn y, a continuacin, en Siguiente.
10. En la pgina Finalizacin del Asistente para importacin de certificados, compruebe que la
informacin proporcionada es correcta y haga clic en Finalizar

Paso 3: configurar el servidor web


Este paso incluye los procedimientos para configurar una aplicacin para notificaciones en el servidor web
(adfsweb). Configurar IIS en el servidor web
Crear y configurar la aplicacin para notificaciones
Credenciales administrativas
Para realizar todos los procedimientos, inicie sesin en adfsweb con la cuenta Administrador local.

Configurar IIS en el servidor web


Realice el siguiente procedimiento para configurar IIS en el servidor web (adfsweb).
Para configurar IIS en el servidor web
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga doble clic en ADFSWEB, haga doble clic en Sitios y, a continuacin,
haga clic en Sitio web predeterminado.
3. En el panel Acciones, haga clic en Enlaces.
4. En el cuadro de dilogo Enlaces de sitio, haga clic en Agregar.
5. En Tipo, haga clic en https.
6. En Certificado SSL, haga clic en adfsweb, a continuacin, en Aceptar y, por ltimo, en Cerrar.
7. En el panel central, haga doble clic en Configuracin de SSL, seleccione la casilla Requerir SSL.
8. En Certificados de cliente, haga clic en Aceptar y, a continuacin, en Aplicar.

Crear y configurar la aplicacin para notificaciones


15

Utilice el siguiente procedimiento para configurar el servidor web (adfsweb) para hospedar una aplicacin
para notificaciones de muestra.
Para crear y configurar la aplicacin para notificaciones
1. Haga clic en Inicio, seleccione Herramientas administrativas y, a continuacin, haga clic en
Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga doble clic en ADFSWEB, haga doble clic en Sitios, haga clic con el
botn secundario en Sitio web predeterminado y, a continuacin, haga clic en Agregar aplicacin.
3. En el cuadro de dilogo Agregar aplicacin, en Alias, escriba claimapp.
4. Haga clic en Seleccionar, seleccione Classic .NET AppPool en el men desplegable y, a
continuacin, haga clic en Aceptar.
5. Haga clic en el botn ... y, a continuacin, resalte la carpeta d:\inetpub\wwwroot.
6. En Crear carpeta nueva, asigne a la carpeta el nombre claimapp, haga clic en Aceptar y, a
continuacin, vuelva a hacer clic en Aceptar.

No utilice maysculas en el nombre de la carpeta claimapp. Si el nombre de esta carpeta contiene


maysculas, los usuarios tambin deben usar maysculas cuando escriban la direccin del sitio web.
7. Cree los tres archivos que conforman la aplicacin para notificaciones de muestra mediante los

procedimientos que se describen en Apndice: crear la aplicacin para notificaciones de ejemplo.


Despus de crear los archivos, cpielos en la carpeta d:\inetpub\wwwroot\claimapp.

Paso 4: configurar los servidores de federacin


Una vez instalados los Servicios de federacin de Active Directory (AD FS) y configurado el servidor web
para la aplicacin para notificaciones de ejemplo, se configurar el Servicio de federacin en los servidores
de federacin de Trey Research y A. Datum Corporation. En este paso:

Har que el Servicio de federacin de Trey Research reconozca la aplicacin para notificaciones.

Agregar almacenes de cuentas y notificaciones de grupo al Servicio de federacin correspondiente.

Configurar cada una de las notificaciones de grupo de forma que se asignen a un grupo de Servicios
de dominio de Active Directory (AD DS) del bosque correspondiente.

Este paso se compone de las siguientes tareas:

Configuracin del Servicio de federacin para A. Datum Corporation

Configuracin del Servicio de federacin para Trey Research

Creacin de ambos lados de la confianza de federacin mediante el uso de la funcionalidad de


importacin y exportacin

Credenciales administrativas
16

Para realizar los procedimientos de este paso, inicie sesin en el equipo adfsaccount y en el equipo
adfsresource con la cuenta Administrador del dominio.

Configuracin del Servicio de federacin para A. Datum


Corporation
En esta seccin se incluyen los siguientes procedimientos:

Configuracin de la directiva de confianza de A. Datum

Creacin de una notificacin de grupo para la aplicacin para notificaciones

Adicin y configuracin de un almacn de cuentas de AD DS

Configuracin de la directiva de confianza de A. Datum


Realice el procedimiento siguiente en el equipo adfsaccount para configurar la directiva de confianza para el
Servicio de federacin de A. Datum Corporation.
Para configurar la directiva de confianza de A Datum
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. En el rbol de consola, haga doble clic en Servicio de federacin, haga clic con el botn secundario
en Directiva de confianza y, a continuacin, haga clic en Propiedades.
3. En la ficha General, en URI del Servicio de federacin, escriba urn:federation:adatum.
Nota
Este valor distingue maysculas de minsculas.
4. En el cuadro de texto Direccin URL del extremo de Servicio de federacin, compruebe que
aparece https://adfsaccount.adatum.com/adfs/ls/.
5. En la opcin Nombre para mostrar de esta directiva de confianza de la ficha Nombre para
mostrar, escriba A. Datum (reemplace cualquier valor que aparezca en el campo con A. Datum) y, a
continuacin, haga clic en Aceptar.

Creacin de una notificacin de grupo para la aplicacin para notificaciones


Realice el siguiente procedimiento para crear una notificacin de grupo que servir para autenticarse en el
bosque treyresearch.net.
Para crear una notificacin de grupo para la aplicacin para notificaciones
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.

17

2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga clic con el botn secundario en Notificaciones de organizacin, elija
Nuevo y, a continuacin, haga clic en Notificacin de organizacin.
3. En el cuadro de dilogo Crear una nueva notificacin de organizacin, en Nombre de
notificacin, escriba Trey ClaimApp Claim.
4. Compruebe que est seleccionado Notificacin de grupo y haga clic en Aceptar.

Adicin y configuracin de un almacn de cuentas de AD DS


Realice los procedimientos siguientes para agregar un almacn de cuentas de AD DS al Servicio de
federacin de A. Datum Corporation.

Adicin de un almacn de cuentas de AD DS

Asignacin de un grupo global a la notificacin de grupo de la aplicacin para notificaciones

Adicin de un almacn de cuentas de AD DS


Realice el siguiente procedimiento para agregar un almacn de cuentas de AD DS.
Para agregar un almacn de cuentas de AD DS
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga clic con el botn secundario en Almacenes de cuentas, elija Nuevo
y, a continuacin, haga clic en Almacn de cuentas.
3. En la pgina Asistente para agregar almacenes de cuentas, haga clic en Siguiente.
4. En la pgina Tipo de almacn de cuentas, compruebe que la opcin Servicios de dominio de
Active Directory est seleccionada y, a continuacin, haga clic en Siguiente.
Nota
Slo puede tener un almacn de AD DS asociado con un Servicio de federacin. Si la opcin Servicios de
dominio de Active Directory no est disponible, ya se ha creado un almacn de AD DS para este Servicio de
federacin.
5. En la pgina Habilitar este almacn de cuentas, compruebe que la casilla Habilitar este almacn
de cuentas est activada y, a continuacin, haga clic en Siguiente.
6. En la pgina Finalizacin del Asistente para agregar almacenes de cuentas, haga clic en
Finalizar.
Asignacin de un grupo global a la notificacin de grupo de la aplicacin para notificaciones
Realice el procedimiento siguiente para asignar un grupo global de AD DS a la notificacin de grupo
Trey ClaimApp Claim.
Para asignar un grupo global a la notificacin de grupo de la aplicacin para notificaciones
18

1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga doble clic en Almacenes de cuentas, haga clic con el botn
secundario en Active Directory, elija Nuevo y, a continuacin, haga clic en Extraccin de
notificacin de grupo.
3. En el cuadro de dilogo Crear una nueva extraccin de notificacin de grupo, haga clic en
Agregar, escriba treyclaimappusers y, a continuacin, haga clic en Aceptar.
4. Asegrese de que el men Asignar a esta notificacin de organizacin muestra
Trey ClaimApp Claim y, a continuacin, haga clic en Aceptar.

Configuracin del Servicio de federacin para Trey Research


En esta seccin se incluyen los siguientes procedimientos:

Configuracin de la directiva de confianza de Trey Research

Creacin de una notificacin de grupo para la aplicacin para notificaciones

Adicin de un almacn de cuentas de AD DS

Adicin y configuracin de una aplicacin para notificaciones

Configuracin de la directiva de confianza de Trey Research


Realice el procedimiento siguiente en el equipo adfsresource para configurar la directiva de confianza para
el Servicio de federacin de Trey Research.
Para configurar la directiva de confianza de Trey Research
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. En el rbol de consola, haga doble clic en Servicio de federacin, haga clic con el botn secundario
en Directiva de confianza y, a continuacin, haga clic en Propiedades.
3. En la ficha General, en URI del Servicio de federacin, escriba urn:federation:treyresearch.
Nota
Este valor distingue maysculas de minsculas.
4. En el cuadro de texto Direccin URL del extremo de Servicio de federacin, compruebe que
aparece https://adfsresource.treyresearch.net/adfs/ls/.
5. En la opcin Nombre para mostrar de esta directiva de confianza de la ficha Nombre para
mostrar, escriba Trey Research (reemplace cualquier valor que aparezca en el campo con
Trey Research) y, a continuacin, haga clic en Aceptar.

Creacin de una notificacin de grupo para la aplicacin para notificaciones


19

Realice el procedimiento siguiente para crear una notificacin de grupo que se usar para tomar decisiones
de autorizacin para la aplicacin para notificaciones de ejemplo en nombre de los usuarios del bosque
adatum.com.
Para crear una notificacin de grupo para la aplicacin para notificaciones
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga clic con el botn secundario en Notificaciones de organizacin, elija
Nuevo y, a continuacin, haga clic en Notificacin de organizacin.
3. En el cuadro de dilogo Crear una nueva notificacin de organizacin, en Nombre de
notificacin, escriba Adatum ClaimApp Claim.
4. Compruebe que est seleccionado Notificacin de grupo y haga clic en Aceptar.

Adicin de un almacn de cuentas de AD DS


Realice el procedimiento siguiente para agregar un almacn de cuentas de AD DS al Servicio de federacin
de Trey Research.
Para agregar un almacn de cuentas de AD DS
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga clic con el botn secundario en Almacenes de cuentas, elija Nuevo
y, a continuacin, haga clic en Almacn de cuentas.
3. En la pgina Asistente para agregar almacenes de cuentas, haga clic en Siguiente.
4. En la pgina Tipo de almacn de cuentas, compruebe que la opcin Servicios de dominio de
Active Directory est seleccionada y, a continuacin, haga clic en Siguiente.
5. En la pgina Habilitar este almacn de cuentas, compruebe que la casilla Habilitar este almacn
de cuentas est activada y, a continuacin, haga clic en Siguiente.
6. En la pgina Finalizacin del Asistente para agregar almacenes de cuentas, haga clic en
Finalizar.

Adicin y configuracin de una aplicacin para notificaciones


Realice los procedimientos siguientes en el equipo adfsresource para agregar una aplicacin para
notificaciones al Servicio de federacin de Trey Research.

Adicin de una aplicacin para notificaciones

Habilitacin de Adatum ClaimApp Claim

Adicin de una aplicacin para notificaciones


20

Realice el siguiente procedimiento para agregar una aplicacin para notificaciones al Servicio de federacin.
Para agregar una aplicacin para notificaciones
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Mi organizacin, haga clic con el botn secundario en Aplicaciones, elija Nuevo y, a
continuacin, haga clic en Aplicacin.
3. En la pgina Asistente para agregar aplicaciones, haga clic en Siguiente.
4. En la pgina Tipo de aplicacin, haga clic en Aplicacin para notificaciones y, a continuacin, en
Siguiente.
5. En la pgina Detalles de la aplicacin, en Nombre para mostrar de la aplicacin, escriba
Aplicacin para notificaciones.
6. En Direccin URL de la aplicacin, escriba https://adfsweb.treyresearch.net/claimapp/ y, a
continuacin, haga clic en Siguiente.
7. En la pgina Notificaciones de identidad aceptadas, haga clic en Nombre principal del usuario
(UPN) y, a continuacin, haga clic en Siguiente.
8. En la pgina Habilitar esta aplicacin, compruebe que la casilla Habilitar esta aplicacin est
activada y, a continuacin, haga clic en Siguiente.
9. En la pgina Finalizacin del Asistente para agregar aplicaciones, haga clic en Finalizar.
Habilitacin de Adatum ClaimApp Claim
Ahora que el Servicio de federacin reconoce la aplicacin, realice el procedimiento siguiente para habilitar
la notificacin de grupo Adatum ClaimApp Claim para esa aplicacin.
Para habilitar Adatum ClaimApp Claim
1. En la carpeta Aplicaciones, haga clic en Aplicacin para notificaciones.
2. Haga clic con el botn secundario en Adatum ClaimApp Claim y, a continuacin, haga clic en
Habilitar.

Creacin de ambos lados de la confianza de federacin mediante el


uso de la funcionalidad de importacin y exportacin
La creacin de confianzas federadas entre organizaciones asociadas es ms fcil en Windows
Server 2008 R2 que en sistemas operativos Windows anteriores gracias a las mejoras en la funcionalidad de
exportacin e importacin basada en directivas. En esta seccin, usar esta funcionalidad de importacin y
exportacin para intercambiar archivos de directiva entre las organizaciones A. Datum y Trey Research para
crear la confianza federada correctamente.

21

Para obtener ms informacin acerca del funcionamiento de esta funcionalidad de importacin y


exportacin, vea el tema que trata acerca del rol Servicios de federacin de Active Directory, en
http://go.microsoft.com/fwlink/?LinkId=104518 (puede estar en ingls).
En esta seccin se incluyen los siguientes procedimientos:

Exportacin de una directiva de confianza desde A. Datum

Importacin de la directiva de confianza de A. Datum a Trey Research

Creacin de una asignacin de notificacin en Trey Research

Exportacin de la directiva de asociado de Trey Research

Importacin de la directiva de asociado de Trey Research a A. Datum

Exportacin de una directiva de confianza desde A. Datum


En el equipo adfsaccount de A. Datum, realice el siguiente procedimiento para exportar los datos de la
directiva de confianza que usar en el siguiente procedimiento para crear un lado de la relacin de confianza
de federacin entre A. Datum y Trey Research.
Exportacin de una directiva de confianza desde A. Datum
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga clic con el botn secundario en Directiva de
confianza y, a continuacin, haga clic en Exportar directiva de asociado bsico.
3. En el cuadro de dilogo Exportar directiva de asociado bsico, haga clic en Examinar; en
Nombre de archivo escriba d:\adfsaccount y haga clic en Guardar y en Aceptar.
Nota
Si este fuese un entorno de produccin de AD FS real, el administrador de A. Datum enviara ahora el
archivo de directiva exportado al administrador del asociado de recurso de Trey Research por correo
electrnico u otro medio.

Importacin de la directiva de confianza de A. Datum a Trey Research


En el equipo adfsresource de Trey Research, realice el procedimiento siguiente para importar los datos de la
directiva de confianza de A. Datum que necesita para terminar de crear el primer lado de la confianza de
federacin y para agregar A. Datum como asociado de cuenta a la directiva de confianza de Trey Research.
Importacin de la directiva de confianza de A. Datum a Trey Research
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Organizaciones asociadas, haga clic con el botn secundario en Asociados de cuenta, elija
Nuevo y, a continuacin, haga clic en Asociado de cuenta.
22

3. En la pgina Asistente para agregar asociados de cuenta, haga clic en Siguiente.


4. En la pgina Importar archivo de directiva, en Archivo de directiva de interoperabilidad de
asociados, escriba \\adfsaccount\d$\adfsaccount.xml, haga clic en S y, a continuacin, en
Siguiente.
5. En la pgina Detalles del asociado de cuenta, compruebe lo siguiente:
o Nombre para mostrar es A. Datum.
o URI del Servicio de federacin es urn:federation:adatum.
o Direccin URL del extremo de Servicio de federacin es
https://adfsaccount.adatum.com/adfs/ls/. A continuacin, haga clic en Siguiente.
6. En la pgina Certificado de comprobacin de asociado de cuenta, compruebe que la opcin Usar
el certificado de comprobacin del archivo de importacin de directiva est seleccionada y haga
clic en Siguiente.
7. En la pgina Escenario de federacin, compruebe que la opcin SSO web federado est
seleccionada y, a continuacin, haga clic en Siguiente.
8. En la pgina Notificaciones de identidad de asociados de cuenta, compruebe que las casillas
Notificacin de UPN y Notificacin de correo electrnico estn activadas y, a continuacin, haga
clic en Siguiente.
9. En la pgina Sufijos UPN aceptados, escriba adatum.com, haga clic en Agregar y, a continuacin,
haga clic en Siguiente.
10. En la pgina Sufijos de correo electrnico aceptados, escriba adatum.com, haga clic en Agregar
y, a continuacin, haga clic en Siguiente.
11. En la pgina Habilitar este asociado de cuenta, compruebe que la casilla Habilitar este asociado
de cuenta est activada y, a continuacin, haga clic en Siguiente.
12. En la pgina Finalizacin del Asistente para agregar asociados de cuenta, haga clic en Finalizar.

Creacin de una asignacin de notificacin en Trey Research


En el equipo adfsresource de Trey Research, realice el siguiente procedimiento para crear la asignacin de
notificacin de grupo entrante que usar para la aplicacin para notificaciones de ejemplo En el
procedimiento posterior, exportar esta asignacin de notificacin a A. Datum junto con otros datos de
directiva que sean relevantes para crear esta relacin de confianza federada.
Nota
En A. Datum, cuando importe los datos de directiva de Trey Research, se le pedir que cree
automticamente una asignacin de notificacin de grupo saliente a partir del nombre de la asignacin de
notificacin de grupo entrante que cree en este procedimiento (ClaimAppMapping). Realizar esta parte del
proceso de importacin ayuda a evitar errores tipogrficos.
Creacin de una asignacin de notificacin en Trey Research

23

1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Organizaciones asociadas, haga doble clic en Asociados de cuenta, haga clic con el botn
secundario en A. Datum, elija Nuevo y, a continuacin, haga clic en Asignacin de notificacin de
grupo entrante.
3. En el cuadro de dilogo Crear una nueva asignacin de notificacin de grupo entrante, en
Nombre de la notificacin de grupo entrante, escriba ClaimAppMapping.
Nota
Este valor distingue maysculas de minsculas. Debe coincidir exactamente con el valor que especific en
la asignacin de notificacin de grupo saliente en la organizacin del asociado de cuenta, A. Datum.
4. En Notificacin de grupo de organizacin, seleccione Adatum ClaimApp Claim y, a
continuacin, haga clic en Aceptar.

Exportacin de la directiva de asociado de Trey Research


En el equipo adfsresource de Trey Research, realice el procedimiento siguiente para exportar los datos de la
directiva de asociado de Trey Research que usar en el procedimiento posterior para crear el segundo lado
de la relacin de confianza de federacin.
Exportacin de la directiva de asociado de Trey Research
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Organizaciones asociadas, haga doble clic en Asociado de cuenta, haga clic con el botn
secundario en A. Datum y, a continuacin, haga clic en Exportar directiva.
3. En el cuadro de dilogo Exportar directiva de asociado, haga clic en Examinar; en Nombre de
archivo escriba d:\adfsresource y haga clic en Guardar y en Aceptar.
Nota
Si este fuese un entorno de produccin de AD FS real, el administrador de Trey Research enviara ahora el
archivo de directiva de asociado exportado al administrador del asociado de cuenta por correo electrnico u
otro medio.

Importacin de la directiva de asociado de Trey Research a A. Datum


En el equipo adfsaccount de A. Datum, realice el procedimiento siguiente para importar los datos de la
directiva de asociado de Trey Research que necesita para terminar de crear el segundo lado de la confianza
de federacin y para agregar Trey Research como asociado de recurso a la directiva de confianza de
A. Datum.
Importacin de la directiva de asociado de Trey Research a A. Datum
1. Haga clic en Inicio, elija Herramientas administrativas y, a continuacin, haga clic en Servicios
de federacin de Active Directory.
24

2. Haga doble clic en Servicio de federacin, haga doble clic en Directiva de confianza, haga doble
clic en Organizaciones asociadas, haga clic con el botn secundario en Asociados de recurso, elija
Nuevo y, a continuacin, haga clic en Asociado de recurso.
3. En la pgina Asistente para agregar asociados de recurso, haga clic en Siguiente.
4. En la pgina Importar archivo de directiva, haga clic en S, en Archivo de directiva de
interoperabilidad de asociados, escriba \\adfsresource\d$\adfsresource.xml y, a continuacin, en
Siguiente.
5. En la pgina Detalles del asociado de recurso, compruebe lo siguiente:
o Nombre para mostrar es Trey Research.
o URI del Servicio de federacin es urn:federation:treyresearch.
o Direccin URL del extremo de Servicio de federacin es
https://adfsresource.treyresearch.net/adfs/ls/. A continuacin, haga clic en Siguiente.
6. En la pgina Certificado de comprobacin de asociado de cuenta, compruebe que la opcin Usar
el certificado de comprobacin del archivo de importacin de directiva est seleccionada y haga
clic en Siguiente.
7. En la pgina Escenario de federacin, compruebe que la opcin SSO web federado est
seleccionada y, a continuacin, haga clic en Siguiente.
8. En la pgina Notificaciones de identidad de asociados de recurso, compruebe que las casillas
Notificacin de UPN y Notificacin de correo electrnico estn activadas y, a continuacin, haga
clic en Siguiente.
9. En la pgina Seleccionar sufijo UPN, compruebe que Reemplazar todos los sufijos UPN con los
siguientes muestra adatum.com y, a continuacin, haga clic en Siguiente.
10. En la pgina Seleccionar sufijo de correo electrnico, compruebe que Reemplazar todos los
sufijos de correo electrnico con muestra adatum.com y, a continuacin, haga clic en Siguiente.
11. En la pgina Asignar transformaciones de notificacin, en Asignacin seleccione Trey ClaimApp
Claim y haga clic en Siguiente.
12. En la pgina Habilitar este asociado de recurso, compruebe que la casilla Habilitar este asociado
de recurso est activada y, a continuacin, haga clic en Siguiente.
13. En la pgina Finalizacin del Asistente para agregar asociados de recurso, haga clic en Finalizar.

Paso 5: configurar certificados de cliente y probar la aplicacin de ejemplo


En este paso, se preparan, distribuyen y usan los certificados de Servicios de federacin de Active Directory
(AD FS) para probar el acceso desde el equipo cliente a una aplicacin para notificaciones.
Este paso incluye los siguientes procedimientos:

Exportacin de los certificados de adfsweb y adfsaccount a un archivo


25

Importacin de los certificados de adfsweb, adfsaccount y adfsresource

Acceso a la aplicacin para notificaciones desde el equipo cliente

Exportacin de los certificados de adfsweb y adfsaccount a un archivo


Credenciales administrativas
Para realizar los procedimientos de este paso, debe iniciar sesin en los equipos adfsweb y adfsaccount con
la cuenta del administrador del dominio.
Realice este procedimiento para exportar los certificados de autenticacin de servidor para adfsweb y
adfsaccount a archivos. Al llevar a cabo este paso de vez en cuando e importar los certificados al equipo
adfsclient en el paso siguiente, podr optimizar la experiencia del usuario mediante la prevencin de la
peticin de certificados que los usuarios ven normalmente cuando tienen acceso a las aplicaciones federadas.
El certificado de autenticacin del servidor adfsresource se export a un archivo en el paso 2. No es
necesario exportar el certificado otra vez. En el siguiente procedimiento, importar estos certificados al
equipo adfsclient.
Para exportar los certificados de adfsweb y adfsaccount a un archivo
1. En el equipo adfsweb, haga clic en Inicio, seleccione Herramientas administrativas y, a
continuacin, haga clic en Administrador de Internet Information Services (IIS).
2. En el rbol de consola, haga clic en ADFSWEB.
3. En el panel central, haga doble clic en Certificados de servidor.
4. En el mismo panel, haga clic con el botn secundario en adfsweb.treyresearch.net y, a
continuacin, haga clic en Exportar.
5. En el cuadro de dilogo Exportar certificado, haga clic en el botn .
6. En Nombre de archivo, escriba d:\adfsweb y, a continuacin, haga clic en Abrir.
7. Escriba una contrasea para el certificado, confrmela y haga clic en Aceptar.
8. Repita los pasos 1 a 7 en el equipo adfsaccount. En el paso 6, guarde el archivo como
C:\adfsaccount.

Importacin de los certificados de adfsweb, adfsaccount y adfsresource


Credenciales administrativas
Para realizar los procedimientos de este paso, debe iniciar sesin en el equipo adfsclient con la cuenta de
administrador local.
Lleve a cabo este procedimiento para importar cada uno de los certificados de autenticacin de servidor de
adfsweb, adfsaccount y adfsresource al almacn de certificados de entidades de certificacin raz de
confianza de los equipos locales.
Para importar los certificados de adfsweb, adfsaccount y adfsresource
26

1. Inicie sesin en el equipo adfsclient con la cuenta de administrador local, haga clic en Inicio, en
Buscar archivos y programas, escriba mmc y, a continuacin, haga clic en Aceptar. Haga clic en
Archivo y, a continuacin, en Agregar o quitar complemento.
2. Haga clic en Certificados, en Agregar, en Cuenta de equipo y, a continuacin, en Siguiente.
3. Haga clic en Equipo local: (el equipo en el que se est ejecutando esta consola), en Finalizar y,
por ltimo, en Aceptar.
4. En el rbol de consola, haga doble clic en el icono Certificados (equipo local), haga doble clic en la
carpeta Entidades de certificacin raz de confianza, haga clic con el botn secundario en
Certificados, elija Todas las tareas y, a continuacin, haga clic en Importar.
5. En la pgina Este es el asistente para importacin de certificados, haga clic en Siguiente.
6. En la pgina Archivo para importar, haga clic en Examinar, escriba
\\adfsresource\d$\adfsresource.pfx en Nombre de archivo, haga clic en Abrir y, a continuacin,
haga clic en Siguiente.
Nota
Es posible que tenga que asignar la unidad de red para obtener el archivo adfsresource.pfx. Tambin puede
copiar el archivo adfsresource.pfx directamente desde adfsresource en adfsclient y, a continuacin, llevar al
asistente a esa ubicacin.
7. En la pgina Contrasea, escriba la contrasea para el archivo adfsresource.pfx y haga clic en
Siguiente.
8. En la pgina Almacn de certificados, haga clic en Colocar todos los certificados en el siguiente
almacn y, a continuacin, haga clic en Siguiente.
9. En la pgina Finalizacin del Asistente para importacin de certificados, compruebe que la
informacin proporcionada es correcta y haga clic en Finalizar.
10. Repita estos pasos en el equipo adfsclient hasta que haya importado los certificados de adfsaccount y
adfsweb, y pase a la siguiente seccin.

Acceso a la aplicacin para notificaciones desde el equipo cliente


Credenciales administrativas
Para realizar los procedimientos de este paso no es necesario iniciar sesin en el equipo cliente con
credenciales administrativas. En otras palabras, si ha iniciado sesin en el equipo cliente como Manuel
Machado (manuelma), puede tener acceso a la aplicacin para notificaciones sin agregar el usuario
manuelma a ninguno de los grupos de administradores locales (por ejemplo, Usuarios avanzados,
Administradores) del equipo adfsclient.
Lleve a cabo el procedimiento siguiente para obtener acceso a la aplicacin para notificaciones de ejemplo
desde un equipo cliente autorizado para dicha aplicacin.
Para tener acceso a la aplicacin para notificaciones desde el equipo cliente
1. Inicie sesin en el equipo adfsclient como manuelma.
27

2. Abra una ventana del explorador y, a continuacin, instale los certificados que se requieren en el
equipo cliente mediante los siguientes pasos:
1. Vaya a https://adfsaccount.adatum.com/.
El explorador muestra el mensaje de error "Error de certificado: Navegacin bloqueada", que
indica que el certificado entrante no lo emiti una entidad de certificacin de confianza. Este
error es normal cuando se implementan servidores de Servicios de federacin de Active
Directory (AD FS) con certificados autofirmados.
2. Haga clic en el vnculo Vaya a este sitio web (no recomendado).
3. En la barra de direcciones, haga clic en Error de certificado y, a continuacin, haga clic en
Ver certificados.
4. En el cuadro de dilogo Certificado, haga clic en Instalar certificado.
5. En la pgina Este es el asistente para importacin de certificados, haga clic en Siguiente.
6. En la pgina Almacn de certificados, haga clic en Colocar todos los certificados en el
siguiente almacn y, a continuacin, haga clic en Examinar.
7. En el cuadro de dilogo Seleccionar almacn de certificados, resalte Entidades de
certificacin raz de confianza, haga clic en Aceptar y, a continuacin, haga clic en
Siguiente.
8. En la pgina Finalizacin del Asistente para importacin de certificados, haga clic en
Finalizar.
9. En el cuadro de dilogo Advertencia de seguridad, haga clic en S.
10. Haga clic en Aceptar dos veces.
11. Repita los pasos de la "a" a la "j" con https://adfsresource.treyresearch.net y
https://adfsweb.treyresearch.net para instalar los tres certificados en el almacn de
certificados de Entidades de certificacin raz de confianza.
3. Vaya a https://adfsweb.treyresearch.net/claimapp/. Cuando se le solicite el dominio kerberos
principal, haga clic en A. Datum Corporation y, a continuacin, en Enviar.
4. En este momento, aparece la Aplicacin de ejemplo SSO en el explorador. Puede ver las
notificaciones enviadas al servidor web en la seccin
SingleSignOnIdentity.SecurityPropertyCollection de la aplicacin de ejemplo.
Nota
Si por alguna razn tiene problemas para tener acceso a la aplicacin para notificaciones, puede ejecutar el
comando iisreset o reiniciar el equipo adfsweb. Despus, intente tener acceso a la aplicacin de nuevo.

Apndice: crear la aplicacin para notificaciones


28

de ejemplo
Puede usar la aplicacin para notificaciones de este apndice para comprobar qu notificaciones enva un
Servicio de federacin en los tokens de seguridad de Servicios de federacin de Active Directory (AD FS).
Este apndice incluye instrucciones para configurar una aplicacin para notificaciones de ejemplo en el
servidor web. Con esta aplicacin para notificaciones de ejemplo y las instrucciones de ayuda de Paso 3:
configurar el servidor web, puede preparar la aplicacin para probarla en el equipo cliente y completar el
proceso de configuracin del servidor web.
La aplicacin para notificaciones de ejemplo consta de los tres archivos siguientes:

Default.aspx

Web.config

Default.aspx.cs

Para completar los procedimientos de este paso debe pertenecer como mnimo al grupo Administradores
local de adfsweb. Consulte los detalles relativos al uso correcto de las cuentas y pertenencias a grupos en
Grupos predeterminados locales y de dominio (http://go.microsoft.com/fwlink/?LinkId=83477).
Para que esta aplicacin funcione correctamente, debe usar los siguientes procedimientos para crear por
orden cada uno de los archivos requeridos. Una vez creados los archivos, muvalos al directorio
D:\inetpub\wwwroot\claimapp en el equipo adfsweb.

Crear el archivo Default.aspx

Crear el archivo Web.config

Crear el archivo Default.aspx.cs

Crear el archivo Default.aspx


Use el siguiente procedimiento para crear el archivo Default.aspx.
Para crear el archivo Default.aspx
1. Inicie el Bloc de notas.
2. Copie y pegue el cdigo siguiente en un nuevo archivo del Bloc de notas:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs"
Inherits="_Default" %>
<%@ OutputCache Location="None" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >

29

<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Claims-aware Sample Application</title>
<style>
<!-.pagetitle { font-family: Verdana; font-size: 18pt; font-weight: bold;}
.propertyTable td { border: 1px solid; padding: 0px 4px 0px 4px}
.propertyTable th { border: 1px solid; padding: 0px 4px 0px 4px; font-weight:
bold; background-color: #cccccc ; text-align: left }
.propertyTable { border-collapse: collapse;}
td.l{ width: 200px }
tr.s{ background-color: #eeeeee }
.banner { margin-bottom: 18px }
.propertyHead { margin-top: 18px; font-size: 12pt; font-family: Arial; fontweight: bold; margin-top: 18}
.abbrev { color: #0066FF; font-style: italic }
-->
</style>
</head>
<body>
<form ID="Form1" runat=server>
<div class=banner>
<div class=pagetitle>SSO Sample</div>
[ <asp:HyperLink ID=SignOutUrl runat=server>Sign Out</asp:HyperLink> | <a
href="<%=Context.Request.Url.GetLeftPart(UriPartial.Path)%>">Refresh without
viewstate data</a>]
</div>
<div class=propertyHead>Page Information</div>
<div style="padding-left: 10px; padding-top: 10px">

30

<asp:Table runat=server ID=PageTable CssClass=propertyTable>


<asp:TableHeaderRow>
<asp:TableHeaderCell>Name</asp:TableHeaderCell>
<asp:TableHeaderCell>Value</asp:TableHeaderCell>
<asp:TableHeaderCell>Type</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table>
</div>
<div class=propertyHead>User.Identity</div>
<div style="padding-left: 10px; padding-top: 10px">
<asp:Table CssClass="propertyTable" ID=IdentityTable runat=server>
<asp:TableHeaderRow>
<asp:TableHeaderCell>Name</asp:TableHeaderCell>
<asp:TableHeaderCell>Value</asp:TableHeaderCell>
<asp:TableHeaderCell>Type</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table>
</div>
<div class=propertyHead>(IIdentity)User.Identity</div>
<div style="padding-left: 10px; padding-top: 10px">
<asp:Table CssClass="propertyTable" ID=BaseIdentityTable runat=server>
<asp:TableHeaderRow>
<asp:TableHeaderCell>Name</asp:TableHeaderCell>
<asp:TableHeaderCell>Value</asp:TableHeaderCell>
<asp:TableHeaderCell>Type</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table>
</div>

31

<div class=propertyHead>(SingleSignOnIdentity)User.Identity</div>
<div style="padding-left: 10px; padding-top: 10px">
<asp:Table CssClass="propertyTable" ID=SSOIdentityTable runat=server>
<asp:TableHeaderRow>
<asp:TableHeaderCell>Name</asp:TableHeaderCell>
<asp:TableHeaderCell>Value</asp:TableHeaderCell>
<asp:TableHeaderCell>Type</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table>
</div>
<div class=propertyHead>SingleSignOnIdentity.SecurityPropertyCollection</div>
<div style="padding-left: 10px; padding-top: 10px">
<asp:Table CssClass="propertyTable" ID=SecurityPropertyTable runat=server>
<asp:TableHeaderRow>
<asp:TableHeaderCell>Uri</asp:TableHeaderCell>
<asp:TableHeaderCell>Claim Type</asp:TableHeaderCell>
<asp:TableHeaderCell>Claim Value</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table>
</div>
<div class=propertyHead>(IPrincipal)User.IsInRole(...)</div>
<div style="padding-left: 10px; padding-top: 10px">
<asp:Table CssClass="propertyTable" ID=RolesTable runat=server>
</asp:Table>
<div style="padding-top: 10px">
<table>
<tr><td>Roles to check (semicolon separated):</td></tr>
<tr><td><asp:TextBox ID=Roles Columns=55 runat=server/></td><td
align=right><asp:Button UseSubmitBehavior=true ID=GetRoles runat=server

32

Text="Check Roles" OnClick="GoGetRoles"/></td></tr>


</table>
</div>
</div>
</form>
</body>
</html>

3. Guarde el archivo del Bloc de notas con el nombre Default.aspx en el directorio


D:\inetpub\wwwroot\claimapp.

Crear el archivo Web.config


Use el siguiente procedimiento para crear el archivo Web.config.
Para crear el archivo Web.config
1. Inicie el Bloc de notas.
2. Copie y pegue el cdigo siguiente en un nuevo archivo del Bloc de notas:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="system.web">
<section name="websso"
type="System.Web.Security.SingleSignOn.WebSsoConfigurationHandler,
System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35, Custom=null" />
</sectionGroup>
</configSections>
<system.web>
<sessionState mode="Off" />
<compilation defaultLanguage="c#" debug="true">
<assemblies>
<add assembly="System.Web.Security.SingleSignOn, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null"/>

33

<add assembly="System.Web.Security.SingleSignOn.ClaimTransforms,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35,
Custom=null"/>
</assemblies>
</compilation>
<customErrors mode="Off"/>
<authentication mode="None" />
<httpModules>
<add
name="Identity Federation Services Application Authentication Module"
type="System.Web.Security.SingleSignOn.WebSsoAuthenticationModule,
System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35, Custom=null" />
</httpModules>
<websso>
<authenticationrequired />
<eventloglevel>55</eventloglevel>
<auditsuccess>2</auditsuccess>
<urls>
<returnurl>https://adfsweb.treyresearch.net/claimapp/</returnurl>
</urls>
<cookies writecookies="true">
<path>/claimapp</path>
<lifetime>240</lifetime>
</cookies>
<fs>https://adfsresource.treyresearch.net/adfs/fs/federationserverservice.asmx</
fs>
</websso>
</system.web>
<system.diagnostics>
<switches>
<add name="WebSsoDebugLevel" value="0" /> <!-- Change to 255 to enable full

34

debug logging -->


</switches>
<trace autoflush="true" indentsize="3">
<listeners>
<add name="LSLogListener"
type="System.Web.Security.SingleSignOn.BoundedSizeLogFileTraceListener,
System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35, Custom=null"
initializeData="d:\logdir\claimapp.log" />
</listeners>
</trace>
</system.diagnostics>
</configuration>

3. Guarde el archivo del Bloc de notas con el nombre Web.config en el directorio


D:\inetpub\wwwroot\claimapp.

Crear el archivo Default.aspx.cs


Use el siguiente procedimiento para crear el archivo Default.aspx.cs
Para crear el archivo Default.aspx.cs
1. Inicie el Bloc de notas.
2. Copie y pegue el cdigo siguiente en un nuevo archivo del Bloc de notas:
using System;
using System.Data;
using System.Collections.Generic;
using System.Configuration;
using System.Reflection;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

35

using System.Web.UI.HtmlControls;
using System.Security;
using System.Security.Principal;
using System.Web.Security.SingleSignOn;
using System.Web.Security.SingleSignOn.Authorization;
public partial class _Default : System.Web.UI.Page
{
const string NullValue = "<span class=\"abbrev\" title=\"Null Reference, or not
applicable\"><b>null</b></span>";
static Dictionary<string, string> s_abbreviationMap;
static _Default()
{
s_abbreviationMap = new Dictionary<string, string>();
//
// Add any abbreviations here. Make sure that prefixes of
// replacements occur *after* the longer replacement key.
//
s_abbreviationMap.Add("System.Web.Security.SingleSignOn.Authorization",
"SSO.Auth");
s_abbreviationMap.Add("System.Web.Security.SingleSignOn", "SSO");
s_abbreviationMap.Add("System", "S");
}
protected void Page_Load(object sender, EventArgs e)
{
SingleSignOnIdentity ssoId = User.Identity as SingleSignOnIdentity;
//
// Get some property tables initialized.
//
PagePropertyLoad();

36

IdentityLoad();
BaseIdentityLoad();
SSOIdentityLoad(ssoId);
SecurityPropertyTableLoad(ssoId);
//
// Filling in the roles table
// requires a peek at the viewstate
// since we have a text box driving this.
//
if (!IsPostBack)
{
UpdateRolesTable(new string[] { });
}
else
{
GoGetRoles(null, null);
}
//
// Get the right links for SSO
//
if (ssoId == null)
{
SignOutUrl.Text = "Single Sign On isn't installed...";
SignOutUrl.Enabled = false;
}
else
{
if (ssoId.IsAuthenticated == false)

37

{
SignOutUrl.Text = "Sign In (you aren't authenticated)";
SignOutUrl.NavigateUrl = ssoId.SignInUrl;
}
else
SignOutUrl.NavigateUrl = ssoId.SignOutUrl;
}
}
void SecurityPropertyTableLoad(SingleSignOnIdentity ssoId)
{
Table t = SecurityPropertyTable;
if (ssoId == null)
{
AddNullValueRow(t);
return;
}
//
// Go through each of the security properties provided.
//
bool alternating = false;
foreach (SecurityProperty securityProperty in ssoId.SecurityPropertyCollection)
{
t.Rows.Add(CreateRow(securityProperty.Uri, securityProperty.Name,
securityProperty.Value, alternating));
alternating = !alternating;
}
}
void UpdateRolesTable(string[] roles)
{

38

Table t = RolesTable;
t.Rows.Clear();
bool alternating = false;
foreach (string s in roles)
{
string role = s.Trim();
t.Rows.Add(CreatePropertyRow(role, User.IsInRole(role), alternating));
alternating = !alternating;
}
}
void IdentityLoad()
{
Table propertyTable = IdentityTable;
if (User.Identity == null)
{
AddNullValueRow(propertyTable);
}
else
{
propertyTable.Rows.Add(CreatePropertyRow("Type name",
User.Identity.GetType().FullName));
}
}
void SSOIdentityLoad(SingleSignOnIdentity ssoId)
{
Table propertyTable = SSOIdentityTable;
if (ssoId != null)
{
PropertyInfo[] props = ssoId.GetType().GetProperties(BindingFlags.Instance |

39

BindingFlags.Public | BindingFlags.DeclaredOnly);
AddPropertyRows(propertyTable, ssoId, props);
}
else
{
AddNullValueRow(propertyTable);
}
}
void PagePropertyLoad()
{
Table propertyTable = PageTable;
string leftSidePath = Request.Url.GetLeftPart(UriPartial.Path);
propertyTable.Rows.Add(CreatePropertyRow("Simplified Path", leftSidePath));
}
void BaseIdentityLoad()
{
Table propertyTable = BaseIdentityTable;
IIdentity identity = User.Identity;
if (identity != null)
{
PropertyInfo[] props = typeof(IIdentity).GetProperties(BindingFlags.Instance |
BindingFlags.Public | BindingFlags.DeclaredOnly);
AddPropertyRows(propertyTable, identity, props);
}
else
{
AddNullValueRow(propertyTable);
}
}

40

void AddNullValueRow(Table table)


{
TableCell cell = new TableCell();
cell.Text = NullValue;
TableRow row = new TableRow();
row.CssClass = "s";
row.Cells.Add(cell);
table.Rows.Clear();
table.Rows.Add(row);
}
void AddPropertyRows(Table propertyTable, object obj, PropertyInfo[] props)
{
bool alternating = false;
foreach (PropertyInfo p in props)
{
string name = p.Name;
object val = p.GetValue(obj, null);
propertyTable.Rows.Add(CreatePropertyRow(name, val, alternating));
alternating = !alternating;
}
}
TableRow CreatePropertyRow(string propertyName, object propertyValue)
{
return CreatePropertyRow(propertyName, propertyValue, false);
}
TableRow CreatePropertyRow(string propertyName, object value, bool alternating)
{
if (value == null)

41

return CreateRow(propertyName, null, null, alternating);


else
return CreateRow(propertyName, value.ToString(), value.GetType().FullName ,
alternating);
}
TableRow CreateRow(string s1, string s2, string s3, bool alternating)
{
TableCell first = new TableCell();
first.CssClass = "l";
first.Text = Abbreviate(s1);
TableCell second = new TableCell();
second.Text = Abbreviate(s2);
TableCell third = new TableCell();
third.Text = Abbreviate(s3);
TableRow row = new TableRow();
if (alternating)
row.CssClass = "s";
row.Cells.Add(first);
row.Cells.Add(second);
row.Cells.Add(third);
return row;
}
private string Abbreviate(string s)
{
if (s == null)
return NullValue;
string retVal = s;
foreach (KeyValuePair<string, string> pair in s_abbreviationMap)
{

42

//
// We only get one replacement per abbreviation call.
// First one wins.
//
if (retVal.IndexOf(pair.Key) != -1)
{
string replacedValue = string.Format("<span class=\"abbrev\"
title=\"{0}\">{1}</span>", pair.Key, pair.Value);
retVal = retVal.Replace(pair.Key, replacedValue);
break;
}
}
return retVal;
}
//
// ASP.NET server side callback
//
protected void GoGetRoles(object sender, EventArgs ea)
{
string[] roles = Roles.Text.Split(';');
UpdateRolesTable(roles);
}
}

3. Guarde el archivo con el nombre Default.aspx.cs en el directorio D:\inetpub\wwwroot\claimapp.

43

Potrebbero piacerti anche