Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas
Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas

martes, 8 de septiembre de 2009

Backup usando las herramientas nativas

Tanto WSS 3.0 como MOSS 2007 tienen como tipo de copia de seguridad el backup completo ó el diferencial. Antes de crear un backup diferencial hay que crear un backup completo.


  • Completo: crea una copia completa de los aspectos de SharePoint que se han seleccionado para backup.
  • Diferencial: crea una copia de seguridad de sólo los datos que han cambiado desde el último backup completo de los aspectos de SharePoint que se han seleccionado para backup.



Usando la Interfaz de Usuario de la Administración Central

  1. En la página de Operaciones, debajo de Copias de Seguridad y Restauración, clic en Realizar Copia de Seguridad.
  2. En Realizar una copia de seguridad - Paso 1 de 2: seleccionar el componente del que desea crear una copia de seguridad: seleccionar los elementos sobre los que se deseen realizar un backup y luego hacer clic en Continuar con las opciones de Copia de Seguridad.
  3. En el Paso 2 de 2, seleccionar el tipo de backup, diferencial o completo y luego la ubicación de los archivos y clic en OK.

La ubicación de los archivos de backup debe ser una ruta UNC (Una ruta de acceso UNC se describe ubicación de un volumen, un directorio o archivo) Por ejemplo, \\nombreServidor\CarpetaBackup.

A esta carpeta se le debe garantizar permisos de escritura a la cuenta de dominio del SQL Agent

viernes, 15 de mayo de 2009

Parte III: Configurando la aplicación SharePoint para doble autenticación.

Publicaciones anteriores:


Por una lado tenemos nuestra aplicación web creada, la cual tiene autenticación windows.

El siguiente paso es crear una extensión de esta aplicación la cual tendrá acceso anónimo desde internet y el mecanismo de autenticación será por formularios, realizando los siguientes pasos:



  1. Desde el Administrador Central de SharePoint ir a Administración de Aplicaciones, Crear o extender una aplicación web, luego elegir Extender una aplicación web existente.
  2. Elegir la aplicación web existente a la cual queremos darle autenticación por formularios de la lista desplegable.
  3. Un punto importante es el puerto que estará escuchando esta aplicación. Para que funcione de forma correcta la doble autenticación, deberá escuchar los mismos puertos, tanto la de autenticación windows como la autenticación por formularios. Por lo que podemos en este paso elegir el mismo puerto de la aplicación que estamos extendiendo, o bien, seleccionar otro puerto y luego crear un acceso alternativo y un binding en el IIS.
  4. Ingresar un nuevo encabezado de host.
  5. Por ahora el modo de autenticación elegir NTLM.
  6. Permitir acceso anónimo: NO, luego lo habilitaremos.
  7. Zona: internet

Una vez creada la extensión, podemos probar el funcionamiento entrando a la nueva url, e ingresando con las credenciales de windows. (Todavía no hemos configurado que se conecte a la base de datos creada en pasos anteriores).


Configuración de las aplicaciones para que se comuniquen con la BD de membresía.

Supongamos que tenemos nuestra aplicación que deberá autenticarse por Windows, la llamaremos http://extranet:5000.
A su correspondiente extensión realizada en los pasos anteriores la llamaremos http://internet:5000

A continuación describiré los pasos para configurar dichas aplicaciones para que accedan a la BD de membresía.

En la parte II de esta serie de publicaciones, se mostró el connectionstring, el proveedor de membresía y el de roles.

Lo que tenemos que hacer ahora es editar tanto el web.config de la http://extranet:5000 como de la http://internet:5000.

Modificar el web.config de http://extranet:5000 si bien utilizará como autenticación windows, permitirá agregar usuarios y administrar permisos utilizando los de formularios también.

Es recomendable antes de la modificación del web.config realizar una copia de respaldo del mismo.
  1. Abrir el web.config de http://extranet:5000/
  2. Insertar el código de connectionstring que creamos en la parte II justo después del tag y antes de la apertura del tag
  3. Insertar el código del proveedor de membresía y el proveedor de roles justo después del tag
  4. Guardar los cambios.
  5. Abrir el web.config de http://internet:5000/
  6. Repetir los pasos 2, 3 y 4.


  7. Para administrar los permisos también desde la adminstración central de SharePoint haremos lo mismo:

  8. Ubicar el web.config de la aplicación central de SharePoint.
  9. Repetir pasos 2 y 3.
  10. Realizar un pequeño cambio, en el nodo roleManager recien insertado, sustituir el valor del atributo defaultProvider que teníamos configurado para los demás archivos de configuración por el siguiente valor: AspNetWindowsTokenRoleProvider.
  11. Guardar los cambios.


Cada vez que realicemos una modificación en el archivo de configuración deberemos reiniciar el iis.

sábado, 9 de mayo de 2009

Configuración de Permisos para utilizar SQL en un WebPart

Problema

Cuando se desarrollan WebParts que interatúan con SQL en WSS 3.0 o MOSS 2007 Standard Edition (en la versión enterprise podríamos utilizar BDC para conectarnos a otra base de datos) aparece normalmente un error de permisos del tipo:


{"Request for the permission of type System.Data.SqlClient.SqlClientPermission,
System.Data, Version=1.0.5000.0, Culture=neutral,
PublicKeyToken=b77a5c561934e089 failed." }

Esto ocurre porque SharePoint, por razones de seguridad, no puede interactuar con sistemas fuera del medio ambiente propio (con SQL en este caso), y por la implementación del la seguridad de acceso de código (CAS, Code Access Security).

En general, cuando se esta desarrollando, es costumbre bajar el nivel de confianza a "Full" (trust level = "Full"), pero para cuando se va a entrar en producción, esto no es recomendable.

Solución
Para evitar el mensaje de error, localice el archivo "wss_minimaltrust.config" de Windows en:


C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\CONFIG\wss_minimaltrust.config


E incluya el siguiente código en la sección "SecurityClasses":


<securityclass description="System.Data.SqlClient.SqlClientPermission, System.Data, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="SqlClientPermission">


Y en la sección "PermissionSet", el siguiente código:


<IPermission class="SqlClientPermission" version="1"
Unrestricted="true" />

lunes, 4 de mayo de 2009

Parte II: Autenticación por Formularios. Configuración

Para configurar el proveedor de membresía y roles utilizaremos Visual Studio, ya que nos da una forma simple de acceder al sitio web de administración de ASP.NET 2.0 y podremos probar antes de pasar estas configuraciones al SharePoint.

A continuación se detallan los pasos a seguir:

1. Crear un nuevo proyecto del tipo aplicación web.






2. Editar el archivo web.config agregando en el nodo connectionStrings la cadena de conexión a la base de datos que creamos en la Parte I como sigue:







3. Una vez configurado el connectionstring, configuramos el membership provider y el role provider:








4. Ahora lo que debemos hacer es configurar que el tipo de autenticación sea Forms, para ello abrimos el sitio de administración de ASP.NET 2.0, que se encuentra en el menú WebSite, ASP. NET Configuration:




5. Una vez en el sitio, abrir el tab Seguridad, hacer clic en Seleccionar tipo de autenticación y finalmente elegir la opción "Desde Internet". Para guardar los cambios, clic en "Listo".



Se deberán otorgar permisos de db_owner a las cuentas de ApplicationPool de las
aplicaciones web de usuarios (portal), de Administración Central y de Servicio
(farm account), ya que de otro modo no tendrás acceso (posteriormente) a la base
de datos de FBA.


6. Crear un usuario de prueba, para ello en el ASP.NET Configuration, en el tab Seguridad hacemos clic en Crear Usuario.



Ya tenemos el código que nos va a servir como base para las diferentes aplicaciones web de WSS, tenemos también la base de datos para los usuarios que autentiquemos por FBA y un usuario que nos servirá para hacer estas pruebas, así que tenemos que crear y configurar las aplicaciones web.


jueves, 16 de abril de 2009

Parte I: Autenticación por Formularios. Base de Datos

Esta es la primer parte de una serie de publicaciones sobre como configurar la autenticación por formularios para una aplicación web en SharePoint.

ASP.NET incluye una herramienta, Aspnet_regsql.exe, que instala la base de datos de SQL Server que utilizan los proveedores de SQL Server.

La herramienta Aspnet_regsql.exe se encuentra en la carpeta unidad:\WINDOWS\Microsoft.NET
\Framework\númeroDeVersión del servidor Web. Aspnet_regsql.exe se utiliza para crear la base de datos de SQL Server y para agregar o quitar opciones en una base de datos existente.

Para agregar entonces una base de datos de membresía para poder configurar una autenticación por formularios para nuestra web application en SharePoint, debemos seguir los siguientes pasos:

1. Abrir una ventana de comando y ejecutar aspnet_regsql.exe
2. Este comando abrirá un wizard el cual se muestra la ventana de bienvenida donde se hará clic en el botón .




3. Seleccionar "Configure SQL Server for application services" y clic en "Siguiente>




4. Ingresar el nombre del servidor de base de datos y donde dice Database ingresar el nombre de la base de datos de membresía. Hacer clic en el botón "Siguiente"



5. A continuación se mostrará una ventana de confirmación de la configuración, si está todo OK, hacer clic en Siguiente hasta que finalicemos el asistente.

Al finalizar quedará creada en el servidor de base de datos que utilizaremos para autenticar usuarios.

jueves, 20 de noviembre de 2008

ViewFormPagesLockdown: Característica de seguridad para no acceder a recursos internos de MOSS

Este Feature se puede utilizar sólo para MOSS 2007. En casos donde el tipo de template utilizado para la creación del sitio hubiese sido Publishing, ya se encuentra activado. Caso contrario hay q activarlo manualmente, para ello se utiliza el comando stsadm.exe que se encuentra en el siguiente directorio:

C:\program files\common files\microsoft shared\web server extensions\12\bin

Este feature sirve para bloquear el acceso de los usuarios anónimos y de aquellos que no tengan permiso de contribución en un sitio web. Tiene sentido si lo que se está publicando es un sitio web para mostrar información.

Los pasos a seguir son: si el usuario anónimo se encuentra activo accedemos con nuestro usuario administrador a /_layouts/setanon.aspx y desactivamos que el usuario anónimo tenga acceso completo a la web.

Ejecutamos el comando de activación de este feature:

Stsadm –o activatefeature –url http://sitioweb –filename ViewFormPagesLockdown/feature.xml

Luego volvemos a entrar a /_layouts/setanon.aspx y activamos que el usuario anónimo tenga acceso al sitio web completo.

Esto bloquea el acceso a /pages, allitems.aspx, dispform.aspx, etc.

Esta regla de bloqueo de acceso se dará a solo aquellos usuarios que tengan acceso de lectura limitado.

Por ende como buena práctica es necesario que todo lo que se muestre en una página de elementos web donde su fuente de datos se corresponda a una lista de sharepoint, no se agregue la lista en si a la zona de elementos web sino que se agregue a través del sharepoint designer una vista de elementos webs donde se muestren todos sus elementos, si la idea es ver el conjunto de datos y luego elegir un hipervínculo en las condiciones anteriores se hubiese insertado la lista y luego al hacer clic se accedía a la página dispform.aspx… como dicha página también queda bloqueada, lo que deberíamos hacer es crear una página de visualización para registros cuyo filtrado corresponde al parámetro ID que viene por querystring.

La sentencia de desactivación de este feature es:

Stsadm –o deactivatefeature –url http://sitioweb –filename ViewFormPagesLockdown/feature.xml