J'ai souvent cette question qui revient par mail, par twitter, par MSN et même dans le train (véridique, ne sortait jamais un bouquin MOSS dans le train, on ne sait jamais si on ne tombe pas sur un codeur en face de soi) : Comment personnaliser la sécurité sous SharePoint ?
Bon, la question n'est point inintéressante mais un poil complexe : c'est un vaaaaste sujet vu la dimension de SharePoint
Soit :
- les comptes de services
- les méthodes d'accés
- les ACL
- Les méthodes de connexion
- la sécurité aux objets
- L'impersonnation
- ...
- ...
Difficile de tout couvrir mais pas de soucis ...
Pour les retardataires, j'avais fait une session couvrant TOUS ces sujets lors des Techdays 2008, donc, premier conseil, jetez un oeil au WebCast
[Microsoft TechDays 2008] - Manipulation et customisation de la sécurité dans Sharepoint
>>> autre session sur le monde Office & SP : http://www.microsoft.com/france/vision/mstechdays08/WebcastMSDN.aspx?EID=c73bf836-16ca-45fd-8db4-fdd637f7fbe1
Second conseil : surtout téléchargez la présentation, il y a des micros samples d'un peu près tout dedans.
Troisiéme conseil : téléchargez le set de demo de sécurité de Ted Pattison, vous aurez un lot de feature avec leur code pour monter en compétence.
Cependant, j'aimerais faire un petit Focus (salut Erwan & Jack) sur la gestion des droits et les utilisateurs. Le principe utilisé dans SharePoint est bien plus riche que l'on croit.
Il ne s'agit pas simplement de mettre des droits à des utilisateurs sur des listes, ce serait trop simple. Pour être exact, se serait trop restrictif d'où une architecture de droit plus réfléchi.
Il existe un superbe schéma qu'il est bon de connaître associé à un passionnant article dans le MSDN :
MSDN : Authorization Object Relations
Grâce à ce dessin, vous allez enfin comprendre le fonctionnement des interfaces de gestion des droits de SharePoint.
Pour résumer, les interfaces vous affichent une version tronqué de la réalité : On ajoute pas des utilisateurs à des groupes ou on leur donne des droits, pas du tout
Il faut bien discerner 4 choses :
- le Scope de droit
- les Assignations de sécurité : SPRoleAssignment
- les ACL SharePoint
- les USERS SharePoint
Soit en détail :
- On ne peut mettre des droits que sur 3 niveaux d'objets sous SharePoint 2007 : les Sites (SPWeb), les Lists (SPList), les Items (SPFolders,SPFile, SPListItem). Les 3 composantes de l'architecture logique d'une collection de site SharePoint
- Une assignation de sécurité est un couple d'information entre un USER SharePoint et un regroupement de permission (SPRoleDefinition) : on ne peut donc donner directement des droits à un utilisateur NT
- Une ACL correspond à des profils de droit voir des regroupements : SPRoleDefinition, ils servent d'abstraction. Par exemple, ce que tous les utilisateurs appellent le droit lecteur correspond sous SharePoint à un profil Lecteur dont les droits réels sont : voir les pages du site, voir les listes, voir les items de la liste.
- Un USER sous SharePoint peut exister sous plusieurs formes, on parle souvent de SPUser. Il est soit un user Landa ou un groupe d'utilisateur dans le Membership référence de votre Web Application. Je ne parle pas de NT, car SharePoint est dépendant d'un membership ASP.Net et non de l'Active Directory (Par défaut, MOSS utilise le membership NT mais ce n'est qu'une configuration pas une obligation).
Donc, il existe des SPUsers et des SPGroups, un SPGroup contient des SPusers (qui est soit des Users NT ou des Groupes NT si vous utilisez le membership NT)
>>> je sais, c'est un peu compliqué mais c'est la réalité !
Prenons un exemple réel pour mieux comprendre :
Vous voulez ajouter un utilisateur Martin comme auteur sur un site : 2 options
- Vous ajouter Martin au SPGroup "Membres du site XXX". En effet, ce SPGroup a été créé à l'initialisation du site et il existe une assignation de sécurité entre le profil de droit "Membre" qui contient les permissions d'ecriture/validation et ce SPGroup
- Vous ajouter Martin comme SPUser et vous créez une assignation entre ce SPuser et le profil de droit "Membre"
D'ou le fameux choix avec les radio buttons !!!
C'est plus clair non ?
>>> Vous devez certainement mieux comprendre pourquoi on retrouve toujours cet écran en gestion des droits...
En effet, lorsque l'on gère les sécurités sous SharePoint, on ne faire que de créer, modifier, voir supprimer des Assignations de sécurités sur une liste, ou un site, ou un item. Ni plus ni moins.

Ainsi, pour que les utilisateurs retrouvent leurs bon vieux réflexes d'ajout de droits "comme sous les dossiers de NT", Microsoft a introduit un micro workflow d'initialisation des site.
Un site SharePoint créé donc , automatiquement, à sa génération :
- 5 profils de droit (Lire", "Contribuer", "Accès total", "Design" et "Lecture seulement") avec les jeux de permissions idoines
- 3 SPGroups de gestion ("Lecteur du site", "Membres du site","Propriétaires du site")
- 3 assignations de sécurité entre les 3 précedents SPGroups et les 3 profils de droit ("Lire","Contribuer" et "Accès total")
- Place le créateur de site en tant que membre du SPGroup "Propriétaire du site"
La suite, vous la connaissez.
Si vous recherchez encore plus d'information, voir du code pour administrer les permissions, je pense que cet article saura vous combler:
Security Programming in SharePoint 2007
- External Security Principals and the SPUser Object
- Adding Authenticated and External Users
- Working with Permission Levels
- WSS Groups
- Identity, Elevation, and Impersonation
- Securable Objects
- Wrapping Up
Et même traduit en français : http://msdn.microsoft.com/fr-fr/magazine/cc163287.aspx
Mais qui as dit qu'il n'y avait rien en documentation sur SharePoint dans le MSDN
>>> Certainement pas moi !
Renaud Comte aka TheMit (Pour Lucas, hiphiphip

)
Member of WygTeam
http://www.wygwam.com
Bien souvent, en mode évangélisation SharePoint, je fait un petit écart sur la notion de sizing, de gestion de ferme, cluster et compagnie.
Eh oui, une architecture SharePoint peut représenter plus d'une machine, même bien bien plus.
Certes, il n'y a que 3 rôle de base entre Front End, Job et SQL mais ...
...
...
il y a aussi les notions très machine de continuité de performance, scalibilité, haute disponibilité,...

Tous ces termes bien spécifiques au monde du serveur et de la leur gestion. Des termes au centre de la problématique de la gouvernance réseau (ou "gestion du Chaos" pour les intimes)

Bon, certes, les développeurs me diront, "c'est pas notre problème, moi je code"
>>> Bon admettons, mais ceux qui évoluent (doucement) vers le monde SharePoint, savent qu'ils se doivent d'avoir une culture générale informatique un peu plus IT.
En effet, les choix de design, les méthodologies de dev peuvent influencer
Exemple : si chaque utilisateur peut stocker 2GB d'information par espace de travail et il y a 2000 utilisateurs dans le portail, on se retrouve finalement avec une collection de Sites de 4TB le tout dans une BDD de la même taille
Et la, le responsable IT et/ou le DBA voient leurs stress tout de suite prendre 2 points au CAC40 de l'ulcère.
Pour mieux faire passer le message, et surtout bien attirer l'attention des gens sur la problématique de la gouvernance IT dans le monde SharePoint, je leur rappelle la veille règle des 5 neufs.
Vous ne connaissez pas ????
Pas de soucis, mon Christian Hougardy de collègue, lui vrai archi IT, l'a posté il y a quelques temps avec force et détails :
Gouvernance et notions de performance au sein des systèmes d’information
Pour vous la faire en plus court, la règle des 5 neufs est la pour vous aider à vous représenter ce que peut coûter une architecture système qui vous garantit la disponibilité de vos serveurs pendant, 99 , 99.9, ... , 99.9999 % du temps.
Ce qui correspond au demande type de SLA d'utilisation d'un portail. Avec cette règle, vous verrez que les gens qui vous demande un système hautement disponible vont réviser leur jugement selon leur budget et/ou leur besoin
Soit le tableau suivant : il représente le % d' indisponibilité (le dowtime) par an
Plus vous augmentez le nombre de 9, plus la redondance de machine, la maintenance, le suivi humain, les méthodologies, le choix hardware, deviennent importants; les coûts inhérents aussi d'ailleurs...
Soit des fermes de plus de 12 machines avec 4-5 personnes qui s'en occupent juste pour être "sur" que le système SharePoint est UP tout les matins à 8h.
A méditer
A relire pour les détails : Gouvernance et notions de performance au sein des systèmes d’information
Bonne surveillance active
Renaud Comte aka TheMit (SPEmpêcheur d'architecturer au calme)
Member of WygTeam
http://www.wygwam.com
Il existait sur GotDotNet un petit outil bien pratique : Le MossQueryTool.exe écrit par Steve Peschka. Celui ci à évoluer doucement et est devenue
http://www.codeplex.com/SharePointSearchServ
Forcement, l'outil est compagnon idéal pour le développement de composant de recherche personnalisé.
Mais il reste un poil spartiate, surtout qu'il faut en plus gérer ensuite la concaténation et tout le système dynamique.
Je vous parle de tout ça car après une longue période de déplacement, mission et autre plaisir professionnel, j'ai pu me remettre un peu à mon atelier découverte préféré : sous entendu, parcourir Codeplex et découvrir, m'enroler et tester un peu tout.
Et bien, j'ai pu trouver un nouvel outil pour remplacer ce cher MossQueryTool
Le SearchCoder
Clairement, l'outil a été inspiré grandement par le premier mais avec une phylosophie bien plus développeur
>>> En effet, il se base sur une classe intermédiaire : MOSSSQLSearch
Le principe est de ne pas à créer une longue requête SQL en texte mais de générer un code métier qui décrit la recherche.
>>> Donc plus facile à maintenir, faire évoluer et surtout à intégrer à tout moteur dynamique. Genre formulaire avancé où l'on précise des champs optionnels de recherche comme des filtre par exemple
Bonus, on n'a pas à gérer de problème de concaténation, de typage et compagnie.
On obtient un code dans ce style :
==> l'outil lui, génére tout simplement ce code au lieu du SQL ou vice et versa si besoin
Pour plus de détail, je vous renvoie sur les liens du projet
Bonne recherche/dev à tous
Renaud Comte aka TheMit (SPStarAc des nouveaux projets)
Member of WygTeam
http://www.wygwam.com
En pleine rédaction passionné et passionnante, j'ai du subir un bug mais vraiment pénible
>>> Le copier coller ne fonctionnait plus, mais plus du tout : d'ou énervement, stress et divers conséquence capillaire.
Hum hum, des lors comment reprendre mes notes ou coller mes captures d'écran de ma VPC ?
Et je ne vous parle pas du reboot de la machine pour le récupérer.
...
...
Après analyse et diverses googleries, j'ai pu identifier le fautif !
>>>Le soucis provenait d'un conflit entre la VPC et le Clipboard quand aléatoirement mais fréquemment, je prenais des captures de ma VPC
Voici les posts qui on su m'indiquer la solution
En résumé, le problème peut arriver entre le clipboard avec soit un module de terminal services et/ou les Virtual Machine Addition
Je n'ai pas trouver actuellement de correctifs (je recherche encore) mais il y a un fix rapide pour remettre en place le Clipboard
Il vous suffit de copier un bout de texte dans votre machine physique, n'importe quoi puis de la coller dans la VPC, n'importe ou MAIS via l'interface VPC et non les raccourci
Soit :

Eh la, plus de soucis 
Remarque, je n'utilise pas d'outils tiers ou exotique pour faire les captures d'écran, j'utilise le simple outil capture de Vista
Renaud Comte aka TheMit (SPecrivain 7/7)
Member of WygTeam
http://www.wygwam.com
En lisant, codant de petits bouts de code et validant quelques fonctionnalités avec les Web Services, je me suis rappellé le bonheur du XML de retour de ces chers ASMX : http://www.developer.com/tech/article.php/3104621
A vrai dire, il existe différentes écoles :
1) les Pro XML
>>> genre : puriste de XPath
N'oubliez pas de rajouter les namespace SharePoint pour pouvoir faire vos requêtes
private XmlNodeList RunXPathQuery(XmlNode XmlNodeToQuery, string
XPathQuery)
{
// load the complete XML node and all its child nodes into a XML document
XmlDocument Document = new XmlDocument();
Document.LoadXml(XmlNodeToQuery.OuterXml);
// all the possible namespaces used by SharePoint and a randomly choosen
prefix
const string SharePointNamespacePrefix = "sp";
const string SharePointNamespaceURI =
"http://schemas.microsoft.com/sharepoint/soap/";
const string ListItemsNamespacePrefix = "z";
const string ListItemsNamespaceURI = "#RowsetSchema";
const string PictureLibrariesNamespacePrefix = "y";
const string PictureLibrariesNamespaceURI =
"http://schemas.microsoft.com/sharepoint/soap/ois/";
const string WebPartsNamespacePrefix = "w";
const string WebPartsNamespaceURI =
"http://schemas.microsoft.com/WebPart/v2";
const string DirectoryNamespacePrefix = "d";
const string DirectoryNamespaceURI =
"http://schemas.microsoft.com/sharepoint/soap/directory/";
// now associate with the xmlns namespaces (part of all XML nodes returned
// from SharePoint) a namespace prefix which we can then use in the queries
XmlNamespaceManager NamespaceMngr = new
XmlNamespaceManager(Document.NameTable);
NamespaceMngr.AddNamespace(SharePointNamespacePrefix,
SharePointNamespaceURI);
NamespaceMngr.AddNamespace(ListItemsNamespacePrefix,
ListItemsNamespaceURI);
NamespaceMngr.AddNamespace(PictureLibrariesNamespacePrefix,
PictureLibrariesNamespaceURI);
NamespaceMngr.AddNamespace(WebPartsNamespacePrefix, WebPartsNamespaceURI);
NamespaceMngr.AddNamespace(DirectoryNamespacePrefix,
DirectoryNamespaceURI);
// run the XPath query and return the result nodes
return Document.SelectNodes(XPathQuery, NamespaceMngr);
}
http://www.csharphelp.com/archives4/archive602.html
2) Les PRO objet
>>> genre : une classe typé por favor
Merci le XDS.exe et l'XMLSerialiser
http://blogs.developpeur.org/themit/archive/2005/04/15/6012.aspx
http://www.peterverster.co.uk/blog/2007/02/07/Programming+MOSS+WSS+V3+Web+Service+API+Part+1.aspx
3) les PRO .Net advance
>>> genre : les generics ou rien
ListItems<MACLASSEListItem> results = null;
XmlNode resultItems = listSvc.GetListItems(listGuid, string.Empty, null, null, string.Empty, null);
Console.WriteLine(resultItems.OuterXml);
results = ListItems<MACLASSEListItem>.FromXml(resultItems.OuterXml);
foreach MACLASSEListItem MAC in results.RowData.ListItems)
{...}
http://blogs.developpeur.org/themit/archive/2008/03/25/sharepoint-et-l-appel-des-web-service-pourquoi-pas-un-peu-de-generics-serialization.aspx
4) Le developpeur landa
>>> genre : je veux juster binder ma liste s i m p l e m e n t !!! (et je le comprends bien)
Dites donc merci au DataSet et sa méthode ReadXml 
sharepointservices.Lists sharepointLists = new sharepointservices.Lists();
sharepointLists.Credentials = new System.Net.NetworkCredential(username, password);
XmlNode node = sharepointLists.GetListItems(listname,string.Empty,null,null,string.Empty,null);
XmlTextReader xmlTextReader = new XmlTextReader(node.OuterXml, XmlNodeType.Element, null);
DataSet dataSet = new DataSet();
dataSet.ReadXml (xmlTextReader);
http://blogs.officezealot.com/mauro/archive/2008/05/17/21034.aspx
5) le mix du tout
>>> Eh oui, toutes les méthodes se valent après tout mais elles ont toutes des impactes en termes de complexité ou de charge. A vous de bien pondérer dans vos choix. (ce lien peut vous aiguiller : http://weblogs.asp.net/paulballard/archive/2005/05/08/406197.aspx)
Renaud Comte aka TheMit (SPeut le plus, code le moins )
Member of WygTeam
http://www.wygwam.com
Les gens les demandent souvent mais nous ne pouvons pas redistribuer nos VPCs de formation, démo ou de projet. Tel est le plan de licence de l'éditeur.
Ce n'est pas bloquant mais un peu gênant, du moins si il y avait une alternative :

La voici, depuis la semaine dernière, Microsoft a mis en ligne un VHD préconfiguré avec
- Windows SharePoint Services 3.0 SP1
- Visual Studio 2005
- Visual Studio 2005 extensions for Windows SharePoint Services 3.0, v1.1
Attention elles sont à durée limité : 30 September 2008
Windows SharePoint Services 3.0 SP1 Developer Evaluation VPC Image
Pour les curieux qui préfèrent plus s'initier à MOSS, voici sa version préconfiguré :
Microsoft Office SharePoint Server 2007 VHD (attention, 4095.7 MB)
Je ne saurais trop vous conseiller de rajouter aussi le SDK ainsi que le STSDEV et le WSPBuilder extensions
De jolies machines à utiliser pour tester les nouveaux WebCast de Microsoft sur le Dev SharePoint :
SharePoint Developer MSDN Web Cast Series
Bon download et bon dev
Renaud Comte aka TheMit (SPCodeur mais sous VPC)
Member of WygTeam
http://www.wygwam.com
Attention, ce post d'humour est particulièrement non politiquement correct mais tellement bon !
Si bien souvent vous recevez des mails, des MSN, des twitters, des relances pour un coup de main sur une question de base, n'hésitez pas, renvoyer vers la meilleur URL du monde :

Rah lovely
PS : cette page n'est pas un joke, il y a même une technique de renvoi vers Google 
Genre http://www.justfuckinggoogleit.com/search.pl?query=SharePoint+architecture+logique
Que du bonheur
Renaud Comte aka TheMit (SPrigolo à ces heures)
Member of WygTeam
http://www.wygwam.com
Le genre de soucis vraiment pas sympathique quand vous déployez vos applications.
Votre application sous SharePoint se met en erreur de manière épisodique car il ne trouve pas des types d'objet genre
- "The type specified in the TypeName property of ObjectDataSource '*******' could not be found."
- "Could not load type "******""
Alors que 10 minutes / secondes avant, tout fonctionnait très bien
Ou sinon, même si votre le fichier asmx de votre Web Service personnel est dans le GAC, l'appel du Web Service vous donne un beau "File not found"
Une solution simple :
Pensez à modifier votre Web.config afin d'ajouter vos DLL au processus de compilation de votre site
http://msdn2.microsoft.com/fr-fr/library/bfyb45k1.aspx
Genre

(source http://www.sharepointblogs.com/nrdev/archive/2006/12/29/tip-dll-in-gac-but-cannot-be-accessed-through-sharepoint-site-quot-could-not-load-type-quot-try-this-fix.aspx)
Tout simplement
[Pour aller plus loin]
>>> Et histoire d'avoir un Best Practice complet, pensez à rajoutez à votre solution une feature niveau WebApplication avec un receiver qui assurera la modification du Web.config (SPWebConfigModification) automatiquement. Ainsi vos installations ne seront que plus discrètes, directe et maintenable
Genre : How To Modify the web.config file in SharePoint using SPWebConfigModification - Mark Wagner
Ps : Post écrit au début depuis un Airbus au dessus de l'Atlantique et fini dans un hotel de l'Aisne 
Renaud Comte aka TheMit (SPDebug)
Member of WygTeam
http://www.wygwam.com
Voici un sujet qui est vraiment d'actualité !
En ces temps ou :
- on annonce 100 millions de licence SharePoint vendus
- que de plus en plus de ferme WSS et MOSS sont configurés
- que le stockage documentaire augmente
- que les chasseurs de têtes cherchent désormais du profil IT SharePoint
il devient temps de parler de maintenance SQL.
Évidemment, ce genre de post serait plus naturel si j'étais quelqu'un de plus IT/DBA comme Christian ou Fabrice, mais après quelque recherche, j'ai pu trouver un très bon document :
Database Maintenance for Microsoft SharePoint Products and Technologies
Je le poste car il s'agit d'un domaine que bien souvent, et malheureusement, que les intégrateurs/développeurs SharePoint ignorent ou minorent un peu trop.
Tout le back-office de données est géré uniquement via ses bases de contenu (et sa base de config). Le Serveur SQL se doit être particulièrement suivi et optimisé.
Ah les problèmes de place disque, d'index congestionné, de log gargantuesque, j'en passe et des meilleurs.
Ce document la, est très bon car il provient vraiment de personne d' expérience ayant certainement vécu le pire et le meilleur sous SharePoint.
Ainsi vous découvrirez lors de sa lecture :
- les joies du contrôle d'intégrité avec le DBCC en ligne de commande
- les problèmes de fragmentation des bases et sys.dm_db_index_physical_stats
- mesure de la fragmentation
- réduction de celle ci (et le batch associé)
- la différence entre la base et les index de celle ci
- la différence entre la place utilisé et la place occupé : merci le Shrink
- La création d'un vrai plan de maintenance
- Contrôle de l'intégrité des bases
- réorganisation des indexes,
- shrink des bases
- et bien sur, tout nettoyer à la fin.
- la gourmandise en performance des opérations de maintenance (n'attendez pas que votre DB fasse 500 GB pour réagir ...)
- ne pas automatiser le Shrink : ne le faire que si besoin ! ou sous condition
- surveiller les opérations de "mouvement" de données important sous SharePoint
- genre déplacement/migration de collection
- suppression de site ou de profile utilisateur
Bonne lecture (si si vraiment, même si vous êtes un Dev, ce ne sera pas une perte de temps !!!!).
PS : Cher IT SharePoint, n'hésitez pas à compléter avec vos liens et remarques
Renaud Comte aka TheMit (promis je retourne au dev rapidemment !!!)
Member of WygTeam
http://www.wygwam.com
Il y a des développeurs qui recherche toute leur vie un minimum de reconnaissance.
Mais des fois, il suffit juste d'utiliser la technologie la plus "love"
Video: ODC2008 Developer Guy Il faut bien sur prendre le tout au Second degrée mais si vous êtes un codeur, un pur et respectable, laissez vous allez et donnez donc une chance à la plateforme Office
Vous risquez d'être agréablement surpris. 
Renaud Comte aka TheMit (critique micro cinéma)
Member of WygTeam
http://www.wygwam.com
-- Post semi ironique à prendre au second degrée (quoi que) --
Rentrant du Compagny Store de Microsoft avec Fabrice Romelard (aspirant SharePoint confirmé
), nous discutions à bâton rompu de :
- nos achats pro XBox comme
- les jeux XBox
- Les manettes
- la télécommande
- les accessoires du Zune V2
- la problématique du changement et des migrations SharePoint
Bien, en ouvrant le CD de la bande son original de HALO 3, je suis tombé sur une phrase d'un des terminaux Forerunner que consulte le fameux "Master Chief".
Je trouve cette phrase tout simplement splendide:
 | "Living in the past is a luxury none of us can afford. We must learn from it, but we can not live there. It is impossible to plan for the now - the present is ever fleeting. The future is where we must live. The future is what we mus plan for." Excerpt from 24 terabyte data image extracted from Forerunner Terminal Network |
Rien à redire
Parfait et à méditer quand vous ouvrez l'admin de votre intranet
Renaud Comte aka TheMit (SPForerunner)
Member of WygTeam
http://www.wygwam.com
Ca y est on est arrivé avec toute la WygTeam après moultes connexions, détour, fouilles, rebooking, nous sommes à Seattle !
Enfin un bon café
Désormais, nous allons enfin pouvoir profiter de l'événement comme il se doit mais malheureusement, comme tous les ans, ce sera sous couvert de NDA ...
Donc pas d'information à relayer qu'il s'agisse de
- Infopath 14
- Visual Studio 10
- SharePoint 14
- ...
- ..
- .
Je sais c'est frustrant et encore plus pour les nouveaux MVP fraîchement nommé qui découvre le monde du silence.
Cependant, il y a une session qui elle n'est pas NDA mais restreinte à une population extrêmement ciblé (vraiment)
Le SPaintBall
Pendant que quelques MVPs se partage la journée du Lundi entre Keynotes, Open lab et Bose Sound System (et pas que Fabrice), d'autre luttent dans la boue et mettent leur intégrité physique en jeu !
Eh oui, les MVPs SharePoint se retrouvent entre eux avec des membres du Team SharePoint dans un journée de Networking/Team Building de haut vol
Mes bon amis GAT et Philippe (Bob Fox official's Puppet
) en ont largement profité et vous prépare un vrai reportage photo.
Bref, un vrai moment de bonheur de 8h du mat à tard dans la nuit !
Quelques chiffres ?
Pas de soucis :
- 48 personnes en 2 équipes
- Certains MVPs US, sur-entrainés:
- Casque radio
- Tenu de Sniper
- Casque et tenu de camouflage pour tous
- 80 000 billes de peinture en une journée
- un peu prés autant de contusion et bleues divers et variés !
Le groupe des SP MVPs augmente et se resserre à chaque Summit : une vrai petite famille toujours en mouvement et le sourire au lèvres
Preuve en est le repas des braves guerriers tout peinturlurés



Ah quel souvenirs comme :
- Andrew Connell bloqué derrière un muret asservi par 5 shooters : il était terrifié
- Philippe Sentenac pris en feu croisé : shoot dorsal et frontal
- Double Head Shoot pris 2 fois de suite par votre serviteur
- Shane Perran touche en plein vol au dessus d'un tas de tapis
- Brad et Bob en pur militaire rempant sous les arbres
- Lawrence pris par un tir ami dans le cou
- Todd Bleeker parlant de Web Services SharePoint en train de recharger son Gun avant de prendre une bille en pleine tête !
Ah la la
Sinon les sessions sont géniales mais sous NDA
A bientôt
PS : je mettrais à jour le post avec les liens vers les photos en ligne des autres MVPS dés qu'elles sont en ligne
Renaud Comte aka TheMit (SPJetLaggeur)
Member of WygTeam
http://www.wygwam.com
Eh oui, le MVP Summit est déjà une réalité pour certains, les blogs codes sources en sont déjà le reflet.
Merci au Team Winwise pour les photos car le trajet pour nous, Chti.Net, est un peu plus compliqué ... et surtout pas encore fini ...
Ah j'aimerais bien vous parler de quelques adresses sympathiques et des rencontres géniales mais voila : il a fallut sauver une vie !
- Départ Amsterdam 13h
- Au 1/3 du voyage, appel du commandant qui recherche un médecin
>>> Crise cardiaque en live dans l'appareil - La totale !!!
- Massage cardiaque
- Electro shock
- Massage cardiaque
- Tracheo
- 2 Bonbonnes d'oxygène
>>> Je ne vous raconte pas l'ambiance dans l'avion. PIRE, le streaming video de l'avion retransmettait des épisodes de DR House [MD] !
- Le coeur est semi stabilisé, reroutage d'urgence vers Shannon en Irelande dans un aéroport Ryan Air : 1H30 de vol
- Arrivé des secours
- Rechecking complet de l'appareil : 2h (mais toujours bloqué dans l'appareil sans nouvelle du patient ni de nos correspondances)
- On redecolle direction New York
- 5h30 plus tard arrivée à Newark
- Custom et Reconnection
- annulation de vol
- soucis de ticket
- certains sont
- en waiting liste
- décolle à 7h pour Seattle
- sur vol pour Denver !!! et hypothétiquement sur Seattle aprés
- direction un hôtel de NY
- quelques news : le patient a été sauvé à l'hopital, ca s'est joué de trés peu niveau temps pour son coeur
- Enfin après 26 heures de voyage, à l'hotel Hollyday In de l'aéroport, un vrai premier repas bien américain entre buns et oignons
Hum hum ...
Et encore, ce n'est pas fini car je vous écris depuis l'hôtel avec Gregory et Julien, croisant les doigts pour :
- les correspondances de nos copains
- notre correspondance à Denver puis Seattle si elle existe
- que ce coup ci, tout le monde soit bien portant
Allez, Haut les coeurs !
Après tout :
- Nous sommes au US
- On a vu L'Irlande et New York ainsi que bientôt Denver
- L'ambiance Wygwam est à fond !!!
- J'ai pu blogger et coder un poil dans l'avion
- Une vie a été sauvée et ça vaut bien tout les désagréments que ce soit l'annulation du Paintball, les RV ratés et les soirées, elles ne seront que meilleurs par la suite

Let's Fly to Denver !!!
Renaud Comte aka TheMit (SPJetLaggeur)
Member of WygTeam
http://www.wygwam.com
Le MVP Summit arrive à grand pas !!!
La WygTeam se déplace aussi en groupe (non pas colonie de vacance) et vas retrouver tous ses amis, contacts, MVPs, Microsofties pour bien des aventures :
- Director meeting
- Workshops
- Advance & Beta
- Networking
- Party
- Et si vous êtes un SharePointeur MVP : PAINT BALL
Ah souvenir : http://blogs.developpeur.org/themit/archive/2007/03/19/mvp-summit-moss-valuable-paintball-day.aspx
Pour les nouveaux MVPs SharePoint ainsi que les futurs, un conseil :
Trêve de plaisanterie
>>> Comme vous vous en doutez, je serais certainement encore en mode "PowerBlog", en quête de nouveautés, moments sympathiques et autres information non NDA
Sous entendu, je ne parlerais pas, mais pas du tout de Office 14, SharePoint 14 et tuti quanti, ....
Pour la petite histoire, tous les MVPs SharePoint seront à l'hotel Shareton, donc si vous êtes dans le coin, n'hésitez pas
Renaud Comte aka TheMit ("Sleepless in Seattle 2")
Member of WygTeam
http://www.wygwam.com
Et mieux que tout : il est encore sous BLISTER !!!
Un pur collector avec ses 3 famille de DVD pour Client/Exchange/SharePoint
So sweet
Renaud Comte aka TheMit (SPNostalgique mais pas trop)
Member of WygTeam
http://www.wygwam.com
Voici un billet d'un nouveau genre, entre le retour d'expérience et le recul critique, en résumé, Mon avis personnel sur une problématique technologique.
Avis que je vais tenter de défendre, argumenter et commenter. A vous ensuite de vous faire votre propre avis sur la question
Bonne lecture (et j'attends avec impatience vos commentaires constructifs, passionnés et passionnants)
Pour le premier de la série, j'ai choisie un sujet qui revient souvent ces temps ci.
Et par tous les moyens de communication possibles !!!
Par
- mail
- courrier
- mobile
- Skype
- MSN
- ET même mon voisin de compartiment dans le TGV !!!!
Nous dirons donc un sujet bien "à la mode" : Migration de bases Lotus Notes vers SharePoint 2007
Attention, il ne s'agit que de mon avis personnel et n'engage que moi et pas mon employeur ou tout éditeur partenaire.
Il est vrai que bien des sociétés ont déployés moult serveurs et sites SharePoint, et souvent avec réussite.
Le tout soutenu par des user-cases accréditant encore plus un marketing assez efficace de Microsoft sans pour autant être vraiment agressif (du moins sur ce sujet là).
Un succès qui se confirme doucement mais sûrement et qui commencent même à convaincre bien des entreprises de franchir le pas.
Et pas n'importe lequel : Migrer un environnement Lotus Notes à la technologie SharePoint...
Il y a 6 ans, j'assurais déjà des projets où on évoquait la possibilité de remplacer bien des systèmes de gestion électronique de connaissance/knowledge sharing via une technologie naissante comme SharePoint 2001.
Avec le temps, évolution oblige, SPS 2003 s'est mis en concurrence naturelle avec Lotus Notes.
Clairement, la matrice avantage / inconvénient entre SPS 200X et Notes 4/5/6 n'était pas à l'avantage de SharePoint.
Mais voila, les années passent, Microsoft apprend, les technologies évoluent et SharePoint 2007 arrive.
Certains remarqueraient même que des hommes-clé ont changé de clan
Genre, Ray McOzie
Créateur de Lotus Notes qui quittera IBM pour créer Groove et qui se retrouve finalement Chief Technical Architect de ... Microsoft.
Je n'ose même pas me projeter sur les prochaines versions de SharePoint mais restons contemporains et revenons sur notre version actuel qu'est SharePoint 2007.
Maintenant, le rapport de force a tendance à s'inverser en la faveur de la SP plate-forme (SP = SharePoint).
Attention, je ne dis pas que Lotus Notes est fini, loin de la, mais voici la tendance actuelle : les demandes de migration sont nombreuses et correspondent rarement à du "Proof Of Concept" !!!
Cependant, ne vivant pas dans un monde merveilleux où tout est interopérable en 2 clicks, où tout le monde se met autour d'une table et arrive à se décider sur une norme, où il ne pleut jamais quand on tond la pelouse,... je dois me raccrocher au vrai monde.
Celui de la vraie vie avec de vrais gens, avec des serveurs, des technologies propriétaires et surtout de nombreuses spécificités.
Dans le petit monde du KM, mes (nos) chers amis consultants fonctionnels parleront toujours de :
- Bases de connaissances
- Expérience utilisateurs
- Catégorisation et taxonomie de l'information
- Référentiel d'entreprise
- Espace de collaboration et de publication
- Workflow d'entreprise
- Dashboard et Scorecards
- ...
Tout un ensemble de sous-ensemble de la poupée russe qu'est l'Enterprise Content Management.
Toute une famille de concepts fonctionnant à merveille sous Lotus Notes et/ou SharePoint 2007.
Si les concepts les rapprochent, une migration d'un outil à un autre ne devrait pas être si problématique, non ?
C'est le principe, en théorie, mais qui n'est pas si évident en pratique.
Je m'explique : pour avoir côtoyé bien longtemps le monde Lotus et avoir vécu l'évolution de SharePoint 2007, j'ai pu remarquer quelques points fondamentalement différents entre ces 2 technologies. Points qu'il vaut mieux savoir pour arriver à migrer d'une technologie à une autre.
Fonctionnellement, il est tout à fait légitime d'envisager et de concevoir de migrer ses bases Notes.
Cependant, exiger une approche iso fonctionnelle, garder l'expérience et les réflexes utilisateurs sont un peu illusoire voire utopique.
En effet, les concepts à la base de l'ECM sont fonctionnels et reposent souvent sur des normes ou des méthodologies de gestion de l'information.
Leur implémentation concrète dépend cependant de l'architecture et de la conception de l'outil, je parlerai même de la philosophie propre de la technologie sous jacente.
Sous entendu, pour nos amis développeurs, il ne s'agit pas forcement de Framework mais de couche produit : chaque produit forme une couche abstraite de son système d'information. Il faut savoir l'exploiter judicieusement et non pas chercher à redévelopper chaque partie.
>>> Il faut plus favoriser l'approche native du produit et l'étendre au besoin des utilisateurs. Chercher à faire forcement correspondre un produit comme Notes ou SharePoint à un fonctionnement spécifique est très risqué. Dans le dernier cas, il faut plutôt s'orienter vers une approche "application spécifique" que chercher à "tordre" l'application pour en faire quelque chose d'autre.
Essayer donc de transformer un serveur SharePoint en une forme d'Exchange pro documentaire ... Il faut mieux préférer :
- un couple SharePoint / Exchange
- une application tout .Net
- autre chose de plus valable
Cependant, Le risque d'effet "usine à gaz", si facile à maintenir dans le temps et à faire évoluer, est bien réel ... Et je ne parle même pas de la capacité des gens à adhérer et à s'approprier de telles applications ...
Donc, il faut toujours respecter la logique propre d'un outil, sa philosophie pour mieux en profiter.
C'est la que se trouve le "hic". Lotus et SharePoint 2007 ont 2 philosophies, 2 conceptions totalement opposés !
Mais qui ne leur interdit en rien de pouvoir offrir au final, en partie, la même offre fonctionnelle autour du Knowledge Management par exemple.
Dés lors, comment arriver à migrer aisément ?
Bien sur, des bases Notes simples avec des workflows basiques se migrent rapidement via les outils/scripts de Microsoft :
Mais dans notre joli monde, il existe très très peu de modèles simples.
Des générations entières de développeurs, de concepteurs et de CP ont rajoutés modifications, composants, workflows et autres customisations pour arriver à répondre à des expressions du besoin de plus en plus exigeantes.
Et plus ces populations utilisaient un outil en particulier, plus ils savaient l'appréhender et profiter de ces forces et éviter ces faiblesses.
Lotus foisonne de Best Practices et de routine interne, comme tout produit, et associé à de bons scénarii fonctionnels, La réalisation d'applications de première qualité n'est pas si compliqué, bien au contraire.
Hors voila, si il est envisageable de conserver ces scenarii fonctionnels comment, mais comment peut on arriver à migrer les Best Practices et autre modèles de conception d'une technologie quand les philosophies sont fondamentalement différentes ?
De mon point de vue, il n'y a pas de miracle, il faut forcement passer par une phase de "concession".
Pour migrer d'une technologie A vers une autre B (genre Lotus vers MOSS), il faut
- Définir les 3-4 fonctionnalités majeures ainsi que les 3-4 mineures de A
- Recenser les outils et solutions de B cadrant avec les fonctionnalités retenues de A
- Proposer des scénarii de modèles équivalents de B par rapport à A
- Transiger, négocier sur les fonctionnalités techniquement viables sous B existant sous A
- Mettre en avant au mieux la technologie B pour compenser et justifier la migration
>>> garder bien à l'esprit la loi de Paretto, 20/80 : tout ne sera pas migrable .... - Mettre en place le kit de migration sur des bases dits de référence sur les scénarii définies
- Planifier le développement des composants manquants
- Planifier la bascule finale
- Préparer les formations utilisateurs et la communication sur le nouvel outil B
- Exploitez et maintenir la nouvelle technologie (bien souvent on oublie que la