Sharepoint Tunisie

Sharepoint Tunisie

Déploiement plus rapide !

Déploiement flexible

Avec les solutions sandbox, vous pouvez exécuter du code personnalisé sur le serveur de manière à en contrôler l'impact sur les autres utilisateurs. Vous pouvez développer du code personnalisé dans Silverlight en accédant à SharePoint à l'aide du modèle COM (Client Object Model) de façon à éviter tout impact sur le serveur.


 



SharePoint 2010 : Présentation des Sandbox solutions

 
La version 2010 de SharePoint apporte son lot de nouveautés. Parmi les changements majeurs figurent les sandbox solutions.
Cet article a pour but de vous présenter les avantages et l'importance de ce nouveau concept dans vos développements

1. Introduction

Une des nouveautés majeure pour les développeurs dans SharePoint 2010 est sans aucun doute la notion de sandbox solutions.
Elles permettent à votre code d'être exécuté dans un contexte isolé, c'est-à-dire que votre solution possède un quota de ressources défini par l'administrateur de la ferme. Si votre solution utilise plus de ressources qu'autorisé elle sera tout simplement stoppée par SharePoint.
L'intérêt est évident : éviter qu'une solution "gourmande" ne vienne mettre à mal toute une ferme.
Nous verrons dans cet article que les sandbox solutions présentent bien d'autres avantages.


2. Les solutions dans SharePoint

Commençons par le début : qu'est-ce qu'une solution ?
Bien qu'étant la seule solution "professionnelle" de déploiement de projets pour SharePoint, les solutions sont encore parfois évitées par les développeurs

Or, l'objectif final de tout développeur SharePoint est bien de fournir des solutions. Rien de plus, et surtout rien de moins.
Le résultat de tout développement SharePoint doit être une solution. D'où l'importance de bien comprendre ce concept.

Lorsque vous installez une nouvelle application sur votre PC vous vous attendez à recevoir un fichier .exe ou .msi qui se chargera de toutes les opérations nécessaires au déploiement de l'application. Il vous est inconcevable de devoir commencer à faire des copies de fichiers dans des répertoires précis ou d'éditer votre base de registre manuellement.
C'est exactement la même chose pour les applications SharePoint, l'administrateur de la ferme s'attend à recevoir un fichier.wsp qui se chargera de toutes les opérations nécessaires.


3. Farm solution contre Sandbox solution

Dans SharePoint 2007 une seule catégorie de solutions existe, ces solutions sont appelées Farm solution dans SharePoint 2010.
Les Farm solutions nécessitent une installation au niveau de la ferme, ce qui implique donc d'avoir accès à l'administration centrale de SharePoint.

L'approche est fondamentalement différente avec les Sandbox solutions : il "suffit" d'être administrateur de collection de sites pour pouvoir déployer et activer une solution.
Évidemment, comme toujours, il y a une contrepartie : le CAS (code access security) par défaut pose quelques limitations :

  • pas de connexion avec un web service ;
  • pas d'accès physique sur le disque ;
  • un Object Model réduit ;
  • ...
Autre limitation à garder à l'esprit : les anciens Web parts (ceux héritant de Microsoft.SharePoint.WebPartPages.WebPart) ne sont pas compatibles avec les Sandbox solutions.

Nous venons de parler des avantages liés au déploiement, voyons à présent les avantages des Sandbox solutions en termes de sécurité et de stabilité de votre ferme.

Comme dit précédemment, chaque Sandbox solution sera exécutée dans son propre service avec un quota de ressources prédéfini par l'administrateur de la ferme. Aucun débordement ne sera possible.

Prenez comme exemple l'utilisation d'une solution téléchargée sur le net. Dans ce cas, et avec une Farm solution, quelle est votre certitude que cette solution ne sera pas dangereuse pour la stabilité et les performances de votre ferme ?
L'intérêt des Sandbox solutions est donc encore plus grand dans le cas d'application tierce.


4. Création d'une Sandbox solution

Pour illustrer la création d'une Sandbox solution nous allons développer un Web part plus que basique. Cela nous permettra de voir la création d'une solution étape par étape.

Créez un nouveau projet dans Visual Studio 2010, choisissez le template "Empty SharePoint Project".

C'est à ce moment que Visual Studio 2010 vous demande de choisir le type de solution à générer. Évidemment dans ce cas nous allons choisir Sandbox solution.

Bien que défini à la création du projet, le type de solution peut être modifié à tout moment via les propriétés de celui-ci.

Voilà, la base de votre solution est construite par Visual Studio. Ajoutez-y un Webpart de type "standard". Les Visual Web part ne sont pas compatibles avec les Sandbox solutions

Le code de notre Web part sera extrêmement simple, il se contentera d'afficher un texte :


[ToolboxItemAttribute(false)]
public class wpSandBox : WebPart
{
    protected override void CreateChildControls()
    {
        Label lbl = new Label();
        lbl.Text = "Ce webpart fait partie d'une sandbox solution";
        this.Controls.Add(lbl);
    }
}
Pour terminer, compilez et packagez votre solution. Le ficher wsp sera créé dans le répertoire bin de votre solution.


5. Déploiement d'une Sandbox solution

Notre solution est donc créée et présente dans notre répertoire bin. Il nous faut alors la déployer dans notre collection de sites.

Avant toute chose, nous devons vérifier que le service nécessaire à l'utilisation des Sandbox solutions est bien démarré sur notre ferme.
Ouvrez votre centrale d'administration et allez dans Applications management et Manage services on server.


Assurez-vous que le service Microsoft SharePoint foundation Sandboxed Code Service est bien démarré. Si ce n'est pas le cas, vous serez dans l'incapacité d'activer votre solution.

Voyons maintenant comment uploader votre solution. En tant qu'administrateur de votre collection de sites, allez dans site settings.

Les solutions se trouvent dans le menu Solutions de la rubrique Galleries.

Uploadez votre solution depuis l'onglet Solutions.

Sélectionnez votre solution. Pour rappel, elle se trouve dans le répertoire bin de votre projet.
Une fois la solution uploadée, activez-la.

Voilà, c'est tout ! Votre Web part est prêt à être utilisé.


6. SharePoint dans les nuages

S'il est bien un concept à la mode et qui, j'en suis certain, continuera à prendre de l'ampleur dans les années à venir, c'est le cloud computing.
Autrement dit l'hébergement à distance de votre plateforme avec délégation de sa maintenance.
Microsoft, et d'autres, offrent déjà ce type de service pour SharePoint 2007. Dans ce type d'infrastructure, il est évident que le fournisseur de services utilisera un même serveur pour plusieurs clients différents. Ce constat fait, il est totalement impossible d'imaginer venir déployer des solutions pouvant mettre en péril la stabilité de plusieurs fermes appartenant à différents clients.
C'est la raison pour laquelle ce type d'offres n'autorise pas le déploiement de solutions personnelles.

Les Sandbox solution vont changer la donne, il sera maintenant autorisé de déployer ses propres développements au niveau d'une collection de sites, et sans risque d'affecter la ferme d'un autre client.
Il est même possible de pousser l'idée un peu plus loin et d'offrir une librairie de solutions téléchargeables et installables automatiquement dans SharePoint. Dans la lignée de l'Apple Store pour l'IPhone, Microsoft fournira ce service sous Office.com.


7. Conclusion

Pour conclure cet article, je dirais que les Sandbox solutions doivent devenir un réflexe pour tout développeur SharePoint.
Si vous pouvez éviter l'utilisation de Farm solution, faites-le !
Source: www.developpez.com
 
Previous
Next Post »