jueves, 31 de mayo de 2012

Búsquedas SharePoint 2010 con autentificacion basada en Claims

Hace un par de meses en un proyecto tuve que configurar una granja de búsquedas en SharePoint 2010. esto no tiene mucha complejidad, pero como siempre hay un pero la autentificacion de este portal es basada en Claims y no solo eso, este también usa federetion services ADFS 2.0.
Requisito:Necesitamos indexar un web aplication cuya autentificacion solo es basa en claims.

Problema: Al utilizar la autentificacion basada en claims los servicios de "Búsqueda de SharePoint  Foundation o Busquedas de SharePoint Server" se ejecutan con un usuario de windows por este motivo cuando estos servicios intentan indexar el contenido nos da un error por no usar autentificacion basada en claims.
Solución: La solucion es extender el web aplication con atentificacion basada en windows. y por mas seguridad con Zona intranet.


Solución: Se creara una extencion al Web aplication que se quiere indexar y rastrear, esta estencion es capas de acceder al contenido del web aplication, por acceder con autentificacion basada en windows


Como hacerlo:





1) Lo primero es agregar entradas en nuestro DNS.
Esto no sirve por si queremos cambiar nuestra granja o servidor de búsquedas rápidamente de servidor
si tenemos un balanceador de carga en la entrada ip adrees colocamos la ip de el balancer.

2) Extender el Web Aplication.
hay dos formas de hacer la extencion una es desde la administración central y otros desde powershell
En el caso de hacerlo por la administración central hay un pequeño bug en sharepoint. Que mas adelnate describo. Por esta razón veremos los dos casos de hacer una extencion para mi gusto es fiable hacerlo desde powershell.

a) Desde Administración Central




Con esto tenemos listo un nuevo pool el cual puede indexar el contenido de portal servicesdesk.
¿Porque esta extencion puede indexar el contenido?
Primero repasemos que es una extencion es el mecanismo de sharepoint para que puedamos acceder a un portal de múltiples maneras. Es decir hay varias entradas en IIS con una sola base de datos de contenido.
Y contestando a la pregunta este extencion puede acceder al contenido de nuestro webaplication sin ningún problema a la autentificacion.

b) Desde PowerShell

$Url="http://searchservice-servicedesk.ryasoft. com"
$Name="Nombre del portal"
$
HostHeader="
searchservice-servicedesk.ryasoft. com
"


$Port= 111

$ZoneType="Intranet"
$UrlExtend=[Url del sitio que se quiere extender]


Get-SPWebApplication –Identity $Url | New-SPWebApplicationExtension -Name $Name -HostHeader $HostHeader -Port $Port -Zone $ZoneType -Url $UrlExtend

Con este scrip podemos extender el webaplication con toda certeza que no va ha duplicar entradas en el IIS

3) Configurar Conten Source







Con eso tenemos listo nuestro origen de contenido

4) Ejecutar Rastreo

Con esto tenemos listo nuestro portal para poder realizar búsquedas
En los siguientes pos aremos algo mas complejo con Scopes y desarrollar búsquedas personalizadas

Espero que les guía les sirva.
Salu2
Aldo Flores
@alduar
























No hay comentarios:

Publicar un comentario