SarePoint 2010 incorpora de serie características multi-tenancy, es decir, se puede dar servicio a varios tenants de forma diferenciada en cuanto a capacidades de administración, creación de colecciones de sitios, etc. La idea de este primer post es mostraros como habilitar el soporte multi-tennacy de SharePoint 2010 a través del Modelo de Objetos:
-
Creamos en primer lugar un proyecto de aplicación de consola en Visual Studio 2010.
-
Añadimos al proyecto una referencia al ensamblado de SharePoint.
-
Añadimos dos sentencias using a Microsoft.SharePoint y Microsoft. SharePoint.Administration.
-
Creamos la Tenant Administration de acuerdo al siguiente código:
|
try
{
SPWebApplication spwWebApp =
SPWebApplication.Lookup(
new Uri(http://win-4p02ybh3fp3));
SPSite spsSitio =
spwWebApp.Sites.Add(
"/sitios/tenantAdmin", "Tenant Administration",
"Tenant Administration", Convert.ToUInt32(1033),
"tenantadmin#0",
"Administrador", "Administrador",
administrador@site.com);
Console.WriteLine(
"Nueva Colección creada: {0}", spsSitio.RootWeb.Title);
spsSitio.AdministrationSiteType = SPAdministrationSiteType.TenantAdministration; spsSitio.Dispose(); }
catch (Exception ex)
{
Console.WriteLine(
"Error en la creación del Sitio: {0}",
ex.Message);
}
|
-
Cómo veis, lo que estamos haciendo con el código anterior es crear una Tenant Administration partícular usando la plantilla “tenantadmin#0" y configurando la propiedad AdministrationSiteTye con el valor TenantAdministration.
-
Creamos una suscripción para la propia Tenant Administration de acuerdo al siguiente código:
|
try
{
using (SPSite spsSiteTenantAdmin =
new SPSite(http://win-4p02ybh3fp3/sitios/tenantAdmin))
{
SPSiteSubscription spsSuscription =
SPSiteSubscription.Create();
spsSuscription.Add(spsSiteTenantAdmin);
}
Console.WriteLine("Suscripción creada con éxito");
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
|
-
Como veis en el código anterior, para crear una subscripción basta con crear una instancia de SPSiteSubscription y llamar al método Create() de esta clase. A continuación, añadimos la Tenant Administration a la colección de subscripciones.
-
Comprobamos que la Tenant Administration está disponible y tenemos acceso a la sección de creación de Colecciones de Sitios para un cierto Tenant (Nota: Por algún extraño motivo, es necesario hacer un IIS Reset para que está página esté visible) y a la gestión de las Aplicaciones de servicio correspondientes.
-
Para crear una Colección de Sitios desde la Tenant Administration, es necesario que tengamos activada la característica de creación de colecciones de sitios sin intervención del administrador.
Referencias:
Comparte este post: