Translate

Mostrando entradas con la etiqueta SharePoint 2013. Mostrar todas las entradas
Mostrando entradas con la etiqueta SharePoint 2013. Mostrar todas las entradas

miércoles, 14 de octubre de 2015

Usuarios anónimos de un sitio de publicación no pueden expandir vistas agrupadas

Una de muchas diferencias que encontramos en sitios Team Sites y en Publishing Sites trata del manejo de features disponibles en cada una de las plantillas.

Por lo general, Team Sites tienen al menos permisos de lectura, mientras que los Publishing Sites están pensados para el acceso anónimo, sin embargo, aunque todo el sitio tenga habilitado el acceso anónimo, ciertas funcionalidades van a solicitar credenciales.

Ejemplo de esto son las listas y bibliotecas que tienen una vista agrupada. El problema que acá se presenta es que al cambiar de colapsado a extendido el contenido de la lista o biblioteca no se carga, por el hecho de estar manipulándolo de manera anónima.

En SharePoint 2013 es muy facil resolverlo. Los Site Collection Administrators deberán ingresar a Site Setting y deshabilitar la opción "Limited-Access user Permission Lockdown Mode"


En SharePoint 2010 la opción no viene por default, sino que tendremos que invocarla por medio de Power Shell con los siguientes comandos:

get-spfeature –site http://misitio

Ubique la opción ViewFormPagesLockDown, de esta manera sabrá que el feature aunque no se vea gráficamente sí está presente


Aplicamos los siguientes comandos para desactivar el feature
$lockdownFeature = get-spfeature viewformpageslockdown
disable-spfeature $lockdownFeature SiteURL

Fuente: http://sureshpydi.blogspot.in/2013/12/viewformpageslockdown-feature-in.html

Con este comando el feature que bloquea la vista de formularios se desactiva, y así los usuarios anónimos no tendrán problemas para hacer manejo de listas y bibliotecas

martes, 6 de octubre de 2015

Página de calendario de SharePoint 2013 no toma estilos css en IE11

Las personas que han trabajado en diseños personalizados para SharePoint 2010 o 2013 se han dado cuenta que muchos de los estilos presentan problemas en Internet Explorer 11, esto se debe a que no se incluyeron las mejoras necesarias en el SP1.

En esta oportunidad se da un fallo en la visualización del calendario en SharePoint 2013 abriéndolo únicamente con IE11, por ejemplo se desactiva el botón que se sobrepone al cambio de vistas y la página en modo edición se ve mal.

La solución radica en cambiar el tag que indica la compatibilidad que tendrá IE11 con su contenido, por lo que se deberá cambiar en el masterpage de extensión html de la siguiente manera:

ORIGINAL
<meta http-equiv="X-UA-Compatible" content="IE=10" />

SOLUCIÓN
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" />

La diferencia entre "IE=10" y "IE=EmulateIE10" es que el primero sólo cambia el agente de usuario para que aparezca con IE10, a diferencia que el segundo, que emula completamente el navegador IE10 inclusive con componentes del API Javascript.

miércoles, 4 de febrero de 2015

Configuración del FBA en SharePoint 2013

A diferencia con la configuración de la autenticación basada en formularios de SharePoint 2010; 2013 cuenta con un par de diferencias que dan al traste con más o menos horas de esfuerzo al momento de implementarlo.

A continuación muestro el procedimiento completo para trabajar en conjunto con la solución codeplex SharePoint 2013 FBA Pack y FBA nativo de SharePoint 2013.

1. Descarga e instalación de SharePoint 2013 FBA Pack desde la página de codeplex. Ahí se verán las instrucciones de instalación, sin embargo no varía de cualquier otra solución wsp. Se activa en los sitecollection necesarios.

En este momento no se podrá configurar esta solución, ya que hace falta crear una serie de conexiones. Por lo tanto quedaremos únicamente con la solución activada

2. Si ya se tiene creado el WebApplication se tendrá que editar la opción de authentication Provider para habilitar el FBA.

En el campo ASP.NET Membership Provider Name escribiremos el nombre del miembro ASP, es mi caso lo llamaré SQLProvider y en ASP.NET Role Manager Name escribiré SQLRol

3. El siguiente paso será crear en el servidor de SQL una base de datos dedicada al almacenamiento de los usuarios creados.

- Browse to c:\Windows\Microsoft .NET\Framwork64\v4.0.30319
- Run aspnet_regsql.exe
- Click Next
- Choose Configure SQL Server for Application Services >> Click Next
- Enter your SQL Server Name , choose Windows Authentication and type in a Database Name

El nombre de la base de datos en mi ejemplo se llamó UsuariosExternos.
Es muy importante en este punto darle a la cuenta que corre el application pool del site collection permisos de owner  en esa base de datos. 



4. Ahora se tendrán que editar los archivos web.config del Web Application y el web.config del Security Token Service de todos los Front Ends de la granja de la siguiente manera:

Web. Config del web application
*Nota: Recuerde hacer una copia de seguridad del archivo web.config


Se incluye un nuevo registro de membershipProvider


  <membership defaultProvider="i">
      <providers>
        <clear />
        <add name="i" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
        

<add name="sqlProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="fbaSQL" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
    
  </providers>
    </membership>

Seguidamente se incluye también un registro para agregar el rol


<roleManager defaultProvider="c" enabled="true" cacheRolesInCookie="false">
      <providers>
        <add name="c" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
        
<add name="sqlRol" type="System.Web.Security.SqlRoleProvider" connectionStringName="fbaSQL" applicationName="/" />

      </providers>
    </roleManager>

Como podrán ver marcado en rojo, se encuentran los mismos nombres de ASP.NET Membership Provider Name y ASP.NET Role Manager Name que se digitaron en el punto 2. Noten como también se hace un llamado al string de conexión hace la base de datos creada para el fin de almacenar las cuentas.

Por último, antes de cerrar el tag de  </configuration> se incluye el string de conexión

  <connectionStrings>
    <add connectionString="data source=SPDBCONTENT;integrated security=sspi; initial catalog=UsuariosExternos;" providerName="System.Data.SqlClient" name="fbaSQL" />
  </connectionStrings>


Finalizada la edición de este archivo se procede a editar el web.config del Security Token Service. Este se accede por medio del IIS, en el sitio SharePoint Web Services.
Web.config del Security Token Service

*Nota: Recuerde hacer una copia de seguridad del archivo web.config



Antes de cerrar el tag de configuration se deben incluir los dos registros de providers y el connection string de la siguiente forma:


<membership defaultProvider="sqlProvider">
<providers>
<clear />
<add name="i" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />


<add name="sqlProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="fbaSQL" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />

</providers>
    </membership>

    <roleManager>
<providers>
<clear />
<add name="c" type="Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />

<add name="sqlRol" type="System.Web.Security.SqlRoleProvider" connectionStringName="fbaSQL" applicationName="/" />
</providers>
    </roleManager>

</system.web>

<connectionStrings>
<add connectionString="data source=SPDBCONTENT;integrated security=sspi; initial catalog=UsuariosExternos;" providerName="System.Data.SqlClient" name="fbaSQL" />
</connectionStrings>

Terminada la edición haga un iisreset y verifique que el CA no tenga problemas de acceso y que todo lo que funcionaba en otrora esté funcionando.

5. Con la edición de los archivos, es decir, con los datos inlcuidos en la configuración, se podrán incluir los usuarios desde la solución FBA 2013.


Cree los usuarios necesarios y asígneles un rol}