Customizar la web de ADFS - Parte 1

Se puede customizar la web de ADFS?

Hace unos días terminé un proyecto que incluía ADFS para validar las credenciales de los usuarios contra el Active Directory local, usando los servicios de Office 365. En el proyecto visualicé varias veces el sitio por defecto que trae el rol de Active Directory Federation Services, entonces me pregunté: se puede modificar y/o mejorar este sitio? Días después me dispuse a escribir este post para compartir mi experiencia.

Customizar la web de ADFS

Primeros pasos

Antes de comenzar vamos a ver que partes componen el sitio de ADFS:

Imagen

Ahora que definimos las partes, vamos a ver cómo podemos hacer para poder modificarlas:

Secciones del portal ADFS

Nombre de la organización

Para modificar el nombre de la organización, tenemos a nuestra disposición un comando de PowerShell que nos facilita esta tarea:

Set-AdfsGlobalWebContent

Una ejemplo de uso de este comando puede ser:

Set-AdfsGlobalWebContent CompanyName "Contoso Corp"

Logo de la organización

Ya sabemos como modificar el Nombre de la organización, ahora vamos a modificar el logo de la empresa para que le brinde al sitio una imagen más personalizada. Es necesario tener presente la ruta donde se encuentra el logo de la organización, que debe tener como medidas recomendadas 260×35 @ 96 dpi y no debe pesar más de 10 KB.

Considerando lo anterior vamos a ejecutar el siguiente cmdlet:

Set-AdfsWebTheme -TargetName default -Logo @{path="C:\Imagenes\Contoso-logo.png"}

El parámetro TargetName es obligatorio. En el ejemplo anterior declaramos el valor como default, ya que es el valor por defecto al generar una implementación de ADFS.

Ilustración del sitio

Tomando el caso anterior, tenemos que las medidas recomendadas para la imagen que aparece en mayor medida en el sitio son 1420×1080 pixels @ 96 dpi y el tamaño no debe ser superior a 200 KB. PowerShell nos facilita la tarea ya que debemos ejecutar el mismo cmdlet que para el caso del logo, pero esta vez declarando el parámetro Illustration:

Set-AdfsWebTheme -TargetName default -Illustration @{path="C:\Imagenes\Contoso-illustration.png"}

Descripción

También es posible agregar un pequeño bloque de texto para que los usuarios puedan leer a modo de información, sugerencias, etc.

Set-AdfsGlobalWebContent -SignInPageDescriptionText 

“Para iniciar sesión en el sitio es necesario contar con un usuario ya creado. Clic aquí para solicitar el alta.”

Con el ejemplo anterior generamos un párrafo para dejar en claro que es necesario tener habilitado un usuario para acceder a ese sitio. Se puede usar HTML en el parámetro, por lo que pueden resaltar o generar vínculos como el del ejemplo.

Pie de página

Dentro del sitio se pueden habilitar 3 tipos diferentes de enlaces que proporcionan información al usuario, éstos son:

  • Home
  • Privacy
  • Help

Home

Define el enlace para crear un vínculo a, por ejemplo, la intranet de la empresa:

Set-AdfsGlobalWebContent -HomeLink 'https://intranet.contoso.com' -HomeLinkText Inicio

Help

Define el link de acceso a al gún portal de ayuda para el usuario o el sitio donde se generan los incidentes, por ejemplo:

Set-AdfsGlobalWebContent -HelpDeskLink 'https://intranet.contoso.com/help/' -HelpDeskLinkText Ayuda

Privacy

En caso de que la organización disponga de un acuerdo de confidencialidad o de alguna política de privacidad, se puede disponer de un vínculo a esta información de la siguiente manera:

Set-AdfsGlobalWebContent -PrivacyLink 'https://intranet.contoso.com/privacy/' -PrivacyLinkText Política

Hasta acá sería el primer bloque de modificaciones que vamos a ver. En la siguiente publicación vamos a ver como armar un theme propio y como aplicarlo usando PowerShell.

Happy scripting!

Comments