<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Search results for 'app:weblogs' matching tags 'Configuracion', 'SharePoint 2010', and 'User Profiles'</title><link>http://msmvps.com/search/SearchResults.aspx?q=app:weblogs&amp;tag=Configuracion,SharePoint+2010,User+Profiles&amp;orTags=0&amp;o=DateDescending</link><description>Search results for 'app:weblogs' matching tags 'Configuracion', 'SharePoint 2010', and 'User Profiles'</description><dc:language>en-US</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Como restablecer el sitio web de IIS “SharePoint Web Services” cuando &amp;#233;ste es eliminado por error en SharePoint 2010</title><link>http://msmvps.com/blogs/haarongonzalez/archive/2011/12/27/como-restablecer-el-sitio-web-de-iis-sharepoint-web-services-cuando-233-ste-es-eliminado-por-error-en-sharepoint-2010.aspx</link><pubDate>Tue, 27 Dec 2011 06:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1804150</guid><dc:creator>haaron</dc:creator><description>&lt;p&gt;Algo que me gusta de trabajar como ingeniero de soporte freelance es el orgullo que te da ganar esas peque&amp;ntilde;as batallas contra la ignorancia. &lt;/p&gt;
&lt;h2&gt;Problema&lt;/h2&gt;
&lt;p&gt;El problema fue que se extendi&amp;oacute; una aplicaci&amp;oacute;n web de SharePoint usando el sitio web de IIS &amp;ldquo;SharePoint Web Services&amp;rdquo;. Antes que cualquier otra cosa, este sitio web de IIS hospeda algunos servicios WCF de sistema los cuales se configuran en todos los WFE de la granja y son utilizados por algunas aplicaciones de servicio, el asistente de configuraci&amp;oacute;n de SharePoint es el encargado de aprovisionar este sitio web en tiempo de instalaci&amp;oacute;n y configuraci&amp;oacute;n de la granja.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/0474.image_5F00_209B1DDA.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/0333.image_5F00_thumb_5F00_7401C826.png" border="0" height="415" width="848" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Lo que sucedi&amp;oacute; es que al extenderse esta aplicaci&amp;oacute;n web en este caso &amp;ldquo;MySite&amp;rdquo; se detuvieron aplicaciones de servicio y quedo totalmente inoperable. El resultado fue desastroso para la granja ya que se detuvieron las aplicaciones de servicio Manage Metadata, User Profile y en este caso el portal de MySite de todo el corporativo. El mensaje de error al intentar acceder al portal fue &lt;b&gt;Could not load user profile&lt;/b&gt;, adicional el visor de eventos empez&amp;oacute; a regitrar &lt;b&gt;An exception occurred when trying to issue security token: The server did not provide a meaningful reply; this might be caused by a contract mismatch, a premature session shutdown or an internal server error&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Como primera reacci&amp;oacute;n de cualquier ser humano es la de des extender el portal. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/1258.image_5F00_6E8331B5.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/3240.image_5F00_thumb_5F00_1FA26C56.png" border="0" height="279" width="491" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Inyectando con esto un problema mayor ya que al remover v&amp;iacute;a herramienta de administraci&amp;oacute;n SharePoint el sitio web de IIS causa que las carpetas asociadas en el sitio web sean eliminadas de la ruta a la que apunta, en este caso &lt;b&gt;C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\Root&lt;/b&gt;.&lt;/p&gt;
&lt;h2&gt;La soluci&amp;oacute;n&lt;/h2&gt;
&lt;p&gt;La soluci&amp;oacute;n a este escenario fue ejecutar el script mencionado en el post &lt;a href="http://blogs.technet.com/b/vinitt/archive/2011/05/14/how-to-get-back-the-sharepoint-webservices-applicaion-in-iis-if-deleted-sharepoint-2010.aspx" target="_blank"&gt;How to get back the SharePoint WebServices application in IIS if deleted, SharePoint 2010&lt;/a&gt;&amp;nbsp;&amp;nbsp; para regenerar el sitio web de IIS &amp;ldquo;SharePoint Web Services&amp;rdquo;,&amp;nbsp; este proceso en efecto si aprovisiono de nuevo el sitio web de IIS, sin embargo, al dar clic sobre el marcaba un error indicando que no exist&amp;iacute;a la ruta de los archivos lo cual es totalmente correcto ya que al des extender se elimino todos los archivos de la ruta a donde apuntaba.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/8358.image_5F00_3E78E034.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/8308.image_5F00_thumb_5F00_73C1F299.png" border="0" height="471" width="811" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Lo que se decidi&amp;oacute; fue buscar la carpeta Root de otra granja y copiarla sobre la carpeta en cuesti&amp;oacute;n. Posteriormente se ejecuto de nuevo el siguiente codigo encontrado aqui: &lt;a href="http://blogs.technet.com/b/vinitt/archive/2011/05/14/how-to-get-back-the-sharepoint-webservices-applicaion-in-iis-if-deleted-sharepoint-2010.aspx" target="_blank"&gt;How to get back the SharePoint WebServices application in IIS if deleted, SharePoint 2010&lt;/a&gt;. Basicamente lo que el procedimiento hace es cargar una instancia de la place SPIisWebServiceInstanceSettings e invoca un par de metodos para realizar el aprovisionamiento del sitio web de IIS sobre el servidor. Una vez que es aprovisionado se procede a realizar un ciclo donde por cada aplicacion de servicio es aprovionado el nuevo sitio web de IIS restableciendo con esto la vinculacion y la dependencia al mismo.&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$webservice = [System.Type]::GetType(&amp;quot;Microsoft.SharePoint.Administration.SPIisWebServiceSettings, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c&amp;quot;)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$Instance = $webservice::Default&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$Method = $webservice.GetMethod(&amp;quot;ProvisionLocal&amp;quot;, &amp;quot;Instance, NonPublic&amp;quot;, $null, @(), $null)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$Method.Invoke($Instance, $null)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$Method = $webservice.GetMethod(&amp;quot;Provision&amp;quot;, &amp;quot;Instance, Public&amp;quot;, $null, @(), $null) &lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;$Method.Invoke($Instance, $null)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Courier New;font-size:x-small;"&gt;&lt;b&gt;Get-SPServiceApplication | ForEach-Object {$_.Provision()}&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;En resumen&lt;/h2&gt;
&lt;p&gt;Cuando inicias con una nueva plataforma&amp;nbsp; y estas en proceso de aprendizaje es comun o normal que sucedan detalles, errores, situaciones de configuracion por error, la recomendacion es revisar cualquier procedimiento en una granja de pruebas para validar el proceso y los resultados previamente.&amp;nbsp; Aqui dos enlaces donde platico algunas consideraciones al respecto: &lt;a href="http://msmvps.com/blogs/haarongonzalez/archive/2011/05/25/que-se-necesita-para-ser-consultor-y-o-desarrollador-sharepoint.aspx" target="_blank"&gt;Que se necesita para ser consultor y/o desarrollador SharePoint&lt;/a&gt; y &lt;a href="http://msmvps.com/blogs/haarongonzalez/archive/2010/10/10/consideraciones-para-poner-en-marcha-soluciones-personalizadas-sharepoint-en-ambientes-de-producci-243-n-de-nuestros-clientes.aspx" target="_blank"&gt;Consideraciones para poner en marcha soluciones personalizadas SharePoint en ambientes de producci&amp;oacute;n de nuestros clientes&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Saludos&lt;/p&gt;</description></item><item><title>Importando las fotograf&amp;#237;as de usuario del directorio activo a los perfiles de usuario de SharePoint 2010</title><link>http://msmvps.com/blogs/haarongonzalez/archive/2011/10/20/importando-las-fotograf-237-as-de-usuario-del-directorio-activo-a-los-perfiles-de-usuario-de-sharepoint-2010.aspx</link><pubDate>Thu, 20 Oct 2011 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1801450</guid><dc:creator>haaron</dc:creator><description>&lt;h2&gt;Introducción&lt;/h2&gt;  &lt;p&gt;En esta ocasión no creo que pueda decir nada distinto de lo que seguramente encontrarás publicado en cualquier otro blog sobre como configurar la fotografía de usuario en servicio de perfiles de usuario de SharePoint 2010. Sin embargo, aquí va:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;En primer lugar hay que asegurarnos de contar con una configuración de sincronización de perfiles totalmente funcional, en ese sentido puedes encontrar en el blog de Harbar MVP de SharePoint Server una contundente guía de cómo lograrlo: &lt;a href="http://www.harbar.net/articles/sp2010ups.aspx"&gt;http://www.harbar.net/articles/sp2010ups.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Para sincronizar la fotografía del usuario al sistema de perfiles de SharePoint hay que hacer lo siguiente: Relacionar el atributo de directorio activo que tiene la imagen requerida con la propiedad del perfil de usuario que utiliza SharePoint para almacenar la dirección Url de la imagen, ejecutar una sincronización completa de los perfiles de usuario, ejecutar comando para generar thumbnails de las imágenes de usuario importadas y ejecutar un rastreo incremental de las búsquedas.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Relacionar el atributo de directorio activo que tiene la imagen requerida con la propiedad del perfil de usuario&lt;/h2&gt;  &lt;p&gt;Accedemos a la herramienta central de administración, seleccionas Application Management y después Manage Service Applications.&amp;#160; De la lista de aplicaciones de servicio seleccionas la de tu servicio de perfiles y sobre el Ribbon das clic sobre la opción Manage. &lt;/p&gt;  &lt;p&gt;De la ventana de configuración del servicio de perfiles seleccionamos Manage User Properties.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/7026.image_5F00_64265596.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/7271.image_5F00_thumb_5F00_6C4A5560.png" width="1259" height="350" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Esto carga la lista de propiedades de servicio de perfiles de usuario de SharePoint y su correspondiente atributo de directorio activo. Entonces, buscamos la propiedad Picture (la cual representa la fotografía de un usuario) y editamos su definición para proceder.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/1832.image_5F00_58409CFD.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/3404.image_5F00_thumb_5F00_179E508E.png" width="582" height="61" /&gt;&lt;/a&gt;     &lt;br /&gt;Del formulario de configuración de la propiedad seleccionamos lo siguiente:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/6862.image_5F00_1012E121.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/5430.image_5F00_thumb_5F00_0F2A556A.png" width="1280" height="1444" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h2&gt;Ejecutar una sincronización completa de los perfiles de usuario&lt;/h2&gt;  &lt;p&gt;Del mismo menú de administración del servicio de perfiles de usuario seleccionamos la opción de Start User Profile Sincronization. Dentro del formulario elegimos iniciar una sincronización full.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/0486.image_5F00_64121BCA.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/5148.image_5F00_thumb_5F00_26550E41.png" width="991" height="349" /&gt;&lt;/a&gt;     &lt;br /&gt;Esto rastreara de nuevo el directorio activo y cargara el valor de los atributos de aquellas propiedades donde hemos declarado un mapeo o equivalencia. Considerando que se ha declarado una relación entre la imagen del usuario proveniente del directorio activo con la propiedad Picture de SharePoint entonces este proceso de sincronización cargara la imagen como tal hacia la base de datos de sincronización que previamente la aplicación de servicio de perfiles de usuario aprovisionó. &lt;/p&gt;  &lt;p&gt;Es importante mencionar que este proceso tarda un tiempo considerable en ejecutarse dependiendo del número de usuarios a sincronizar, en este ejemplo tenemos casi 8000 usuarios y el tiempo promedio que pude identificar es de 15 a 20 minutos.&amp;#160; Así mismo, dentro del servidor SharePoint con esta herramienta &amp;quot;C:\Program Files\Microsoft Office Servers\14.0\Synchronization Service\UIShell\miisclient.exe&amp;quot; puedes ir viendo cada paso que se realiza durante el proceso de sincronización de perfiles.&lt;/p&gt;  &lt;h2&gt;Ejecutar comando para generar thumbnail de las imágenes de usuario importadas&lt;/h2&gt;  &lt;p&gt;Ya que el servicio de sincronización de perfiles termine y puedas constatar que existen cuentas con perfiles de usuarios sincronizados desde directorio activo, entonces procedemos a ejecutar un comando Power Shell que realiza un proceso de creación de imágenes thumbnails de distintos tamaños que posteriormente SharePoint utilizará. &lt;/p&gt;  &lt;p&gt;Dentro de nuestro servidor SharePoint ejecutamos una instancia del SharePoint 2010 Management Shell y ejecutamos el siguiente comando:&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;&lt;font size="6" face="Cordia New"&gt;Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation &lt;a href="http://mysiteurl"&gt;http://mysiteurl&lt;/a&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p align="left"&gt;Este comando tarda unos momentos y crea imágenes de distintos tamaños por cada imagen importada del directorio activo almacenándolas en una carpeta llamada “Profile Pictures” de una biblioteca de imágenes llamada User Photos ubicada en el sitio de nivel superior huésped de la aplicación web de My Site. &lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/6813.image_5F00_3DA012B2.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/2555.image_5F00_thumb_5F00_45878F47.png" width="1002" height="492" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="left"&gt;En la siguiente imagen se muestra los distintas imagenes creadas por el comando.&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/8360.image_5F00_15110AD1.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/haarongonzalez.metablogapi/0537.image_5F00_thumb_5F00_704FCD8C.png" width="1155" height="628" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h2&gt;Ejecutar un “incremental crawl” en las búsquedas&lt;/h2&gt;  &lt;p&gt;Solo para asegurar que se tiene indexado el nuevo contenido “Picture” que nuestro sistema de perfiles de usuario tiene buscamos ejecutar un incremental crawl en la configuración de las búsquedas. Ahora si, en cualquier parte que hagamos referencia a un usuario, este se mostrará con imagen como es el caso de las busquedas de personas.&lt;/p&gt;</description></item></channel></rss>