microsoft sharepoint tour d’horizon - 2.0x.pdf · ra&d (extranet) – collaboration –...
TRANSCRIPT
Microsoft SharePoint
Tour d’horizonTour d’horizon
iware
Janvier 2009
© Centre de Compétences SharePoint 2009
Agenda
• Introduction, exemple
• Fonctionnalités de base
• Architecture
• Outils• Outils
– Listes, type de contenu, vues, webpart, BDC,
webservice, feature, Workflow
– Visual Studio
• Wss, Moss
Historique
• → 2001– Site Server
• Index&Search, Document Management, Web Content Management, eCommerce, …
• 2001Sharepoint Portal Server 2001– Sharepoint Portal Server 2001
• Reprend l’essentiel
• 2003– WSS v2 & SPS 2003
• Webparts, Collaboration Store
• 2007– WSS v3 & MOSS 2007
• Objet de cette présentation
Source: http://www.joiningdots.net/blog/2006/08/sharepoint-history.html
Exemple – RCSO-TIC
• 12 personnes collaborent pour attribuer des fonds à des projets de Ra&D (extranet)– Collaboration
– Publication vers les chercheurs
• Outils– Librairie de documents
• Processus, PVs, revues et fiches de projets, …
– Liste personnalisée• Membres du comité scientifique (reprise sur le site internet)
– Webparts (standards et personnalisés)• Agenda, évaluation des demandes, PV’s, …
– Sous-sites• CS-Admin (sous-sites, processus, wikis, …)
• Professeurs/collaborateurs
• …
Exemple RCSO-TIC
Entête / NavigationEntête / NavigationM
od
ule
s /
Na
vig
ati
on
Mo
du
les
/ N
avig
ati
on
Mo
du
les
/ N
avig
ati
on
Mo
du
les
/ N
avig
ati
on
Contenu, Contenu, webpartswebparts
Exemple Entête-Navigation
Titre ouTitre ou
Utilisateur/connexionUtilisateur/connexion Liens (SP)Liens (SP)
Titre ou
chemin
Titre ou
chemin
Titre
sous-site
Titre
sous-siteRacine, site, sous-siteRacine, site, sous-site
RechercheRecherche
AdministrationAdministration
Modules / Navigation
Visualisation-gestion
du contenu
Visualisation-gestion
du contenu
Librairies de
documents
Librairies de
documents
Listes personnaliséesListes personnalisées
Discussions-forumsDiscussions-forums
Listes des sous-sitesListes des sous-sites
Gestion des droitsGestion des droits
Eléments effacésEléments effacés
Contenu, webpartsVisualisation-gestion
du contenu
Visualisation-gestion
du contenu
DescriptionDescription
WP ListeWP Liste
Accès aux
propriétés du WP
Accès aux
propriétés du WP
WP customWP custom
WP Editeur de texteWP Editeur de texte
Terminologie SharePoint
• Web Application
• Content Database
• Site
• Site Collection
• List Definition
Physical Server
Web Application(s)
• List Definition
• List (instance)
• Fields
• List Columns
• Site Columns
• Content Types
Top Level Site(s)
Site(s)
Site(s)
Site Collection
Fonctionnalités de base
Collaboration
Portal
Enterprise Search
Enterprise Content Management
Business Process & Forms
Business Intelligence
Licensed for Internet/Extranet
Collaboration
• Espace de travail en équipe
– Bibliothèques de documents
– Agenda
– Discussions– Discussions
– Gestion des versions, avec check-in/check-out
– Gestion des droits
– Blogs
– Wiki
Intégration office
Portal
• Délivrer de l’information et des applications dans le contexte de l’utilisateur
• Partage– D’informations et de compétences
– D’applications métiers– D’applications métiers
– De ressources spécifiques selon le rôle
• Fonctions– Framework
• Modèles de site, sécurité, rôles, syndication
• Audience, personnalisation
• Webparts
My site, public
Portal Interoperability
SharePoint Portal
SharePoint Application
Other Portal
Other Application
RSS
Web Services
Web PageOOB Web Parts*
Custom WPs
Web Services
PortalPortal
SharePoint Storage
Database
BDC
**Search protocol handlers can
index content from external
repositories
* OOB Web Parts include:
RSS Web Part, SAP iView Web Part,
Data View Part, WSRP Consumer Web Part,
Page Viewer Web Part, BDC Web Parts, Search
Federation Web Parts
LOB
System
Enterprise Search
• Trouver et agir– User experience:
• hit highlighting, query correction, …
– Intègre le Business Data Catalog
– Recherche sur les personnes et les compétences
• Recherche étendue• Recherche étendue– OOB connecteurs
• Partage de fichiers, sites web, sites SP, dossiers publics Exchange, Lotus Notes
– Open Search Standard
• Management– Règles d’indexation
– Sécurité des accès (query and index-time security trimming)
Source: http://www.microsoft.com/enterprisesearch/serverproducts/moss
Search, exemple
Compte
« privilège »
Compte
« privilège »
8 documents8 documents
Compte Compte Compte
« lecteur »
Compte
« lecteur »
6 documents6 documents
2 documents dans des
dossiers protégés
2 documents dans des
dossiers protégés
Enterprise search in moss 2007
Critère de
recherche
Critère de
recherche
Dépend des
résultats
Dépend des
résultats
Enterprise Content Management
• Document management
– Libraries, workflow, versioning, content types
• Information management policies
– Rules, expiration, auditing,
• Records management• Records management
– Rights (on & off line), record center
• Web content management
– Creating & editing pages, cache management, publishing
• Converting files to web pages
– Office files
Business Process & Forms
• Workflow– Automatisation de tâches répétitives
– Développement sur mesure• Sharepoint Designer, Visual Studio
• Formulaires• Formulaires– Création
• InfoPath
– Saisie des données• InfoPath et/ou Browser (Moss 2007)
– Interaction avec les workflows
– Données XML
Business Intelligence
• Excel Services
• Dashboards & KPI’s
• Report Center Websites
• Data Connection Libraries & Business Data • Data Connection Libraries & Business Data
Catalog
Rapport, exemple
KPI List
Webpart
KPI List
Webpart
KPI définitionKPI définition
Excel displayExcel display
Architecture
logicielle
Applications/Portals
“Pile” Technologique SharePoint
Collaboration
Discussions
Calendars
Presence
Project Mgt.
“Lite”
Offline
Enterprise Content
Management
AuthoringApprovalWeb PublishingPolicy/AuditingRights ManagementRetentionMulti-LingualStaging
Personalization
My SitesTargetingPeople FindingSocial NetworkingPrivacyProfiles
Search
Indexing
Relevance
Metadata
Alerts
User Experience
Business
Application
Integration
Rich FormsWeb FormsBiz Data CatalogData in ListsLOB ActionsSingle Sign-OnBizTalk Integration
Business
Intelligence
Server CalculationsWeb RenderingKPIsDashboardsReport CentersSQL RS IntegrationSQL AS Integration
Operating System Services
ADO.NET / SQL Server IIS Windows Workflow Foundation
ASP.NET (Web Parts, Personalization, Master Pages, Provider Model for navigation, security, etc.)
Core Workspace Services
Storage
Repository
Metadata
Versioning
Backup
Security
Rights/Roles
Pluggable Auth
Per Item
Rights Trimming
Management
Admin UX
Delegation
Provisioning
Monitoring
Topology
Config. Mgmt.
Farm Services
Feature Policy
Extranet
Site Model
Rendering
Templates
Navigation
Visual Blueprint
APIs
Fields/Forms
OM and SOAP
Events
Deployment
Rôles des serveurs SharePoint
• Web Front End
• Shared Services Provider
• Index Server
• Query/Search• Query/Search
• Excel Calculation Server
• Forms Server
• Database Server
Différentes topologies :
D’une seule machine
jusqu’à une architecture
hautement disponible et
évolutive
Ferme SharePoint
• Serveurs
– Une collection de un à plusieurs serveurs, chacunayant une ou plusieurs “fonctions” :
• Web Server
– Web front end (WFE)– Web front end (WFE)
– Pas de services ou données, ne sert que du HTML
– Evolutif - Network Load Balanced (NLB)
• Application Server
– Héberge des “services”
• Database Server
– Configuration
– Contenu des sites
Ferme SharePoint
• Base de données de configuration
– “le coeur et l’âme” de la ferme
• Service SPTimer
– le chef d’orchestre de la ferme– le chef d’orchestre de la ferme
• Central Administration
– Opérations/tâches administratives
Browser:HTTP GET
http://server/appname
IIS / ASP.NET
C:\inetpub\wwwroot\appname
C:\inetpub\wwwroot\appname
web.configC:\inetpub\wwwroot\appname
C:\inetpub\wwwroot\appname
C:\inetpub\wwwroot\appname
web.config
Plusieurs sites sur une ferme
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascxDatabase
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascxDatabase
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Database
C:\inetpub\wwwroot\appname
web.configdefault.aspx…myapp.css
mycontrol.dllmyothercontrol.ascx
Plusieurs sites sur une ferme
all work and no play
Ghosted page :
Non “customisée”
Une seule infrastructure
de Provisioning pour tous
les sites WSS
all work and no playmakes Jack a dull boyall work and no playmakes Jack a dull boy
Page construite en
mémoire
Non “customisée”
Réside sur le File System
Unghosted page :
“Customisée”
Réside dans la base de données
Architecture
matérielle
Architecture serveurs
• Déploiement de base
1 serveurTests/dév
1 serveurTests/dév
2 serveursMinimum
2 serveursMinimum
Source: http://technet.microsoft.com/en-us/library/cc263044.aspx
Architecture serveurs
• Redondance minimale
– La répartition des applications sur les serveurs est souple
Ferme de 3
serveurs
Ferme de 3
serveurs
Ferme de 4
serveurs
Ferme de 4
serveurs
Architecture serveurs
• Redondance plus forte
Ferme de 5
serveurs
Ferme de 5
serveurs
Ferme de 6
serveurs
Ferme de 6
serveurs
Central admin
Shared Services Provider
• Objectif :
– Séparation des services par rapport aux portails
• Requis pour les fonctionnalités Office Server
de niveau sites et cross-sitesde niveau sites et cross-sites
Profiles and Audiences
My Sites
Search
All of Excel Services
All of the BDC (Business Data Catalog)
Shared Services Provider
SPGlobalAdmin
SPWebServer
SPWebApplication
SPSite
SPControl
API
SharePoint
SPWeb
SPList
SPListItem
Identité
• Authentification
– Authentification intégrée Windows
– ASP.NET Membership
• ASP.NET implémente un fournisseur SQL Server
• MOSS est livré avec un fournisseur LDAP• MOSS est livré avec un fournisseur LDAP
• Extensible via développement personnalisé
• Autorisation
– Contrôle d’accès / Basé sur des rôles
• Personnalisation – Système de User Profile
• Audiences - Content targeting
Outils
Listes
type de contenu
Vues
Webpart
BDC
Webservice
Feature
Workflow
Liste personnalisée
• On peut définir les éléments suivants:
– Colonnes
– Types de contenu
– Workflows– Workflows
– Formulaires d’ajout / modification
Liste personnalisée – Editer
élément
Type de contenu
• But: encapsuler des colonnes et les rendre indépendantes d’une liste
• Equivalent à une classe en POO
– Colonnes en tant qu’attributs
– Workflows en tant que comportements
• Formulaires d’ajout/édition/affichage personnalisables
• Système hiérarchique basé sur ID
• Association d’un template office
Type de contenu - Utilisation
Word 2007Word 2007
Vues
• Colonnes à afficher
• Tri
• Filtres
• Groupes• Groupes
• Styles
• …
Vue – Création (1)
Business Data Catalog (BDC)Connecte les serveurs Office aux données métier
(LOB Systems)
Web Parts Listes RechercheProfils
utilisateurs
Applications
spécifiquesList
store
Search
Index
ProfileStore
MétadonnéesBusiness Data Catalog
Base de données
WS Proxy ADO.NET
Service Web
SQL Server, Oracle, OLEDB, ODBCBizTalk, SAP, Siebel, existant, …
Objectifs BDC
• Pas de code à produire pour l’intégration
• Centralisation du déploiement et de la sécurité des données
• Prise en charge de scénarios de portail et de collaboration :collaboration :
– Requêtes sur les données, indexation, personnalisation
• Le BDC n’est pas :
– Un outil de gestion de transactions, un moteur de workflow
– Un outil de transformation de données
– Un adaptateur
BDC en action
MOSSUser Profiles
Active Directory
IS-AcademiaMy Site
Prénom
Nom
Téléphone
Bureau
Lieu de TravailLogin
BDC
Fonction
Statut
Unité de Recherche
Biographie
Recherche
Enseignement
MOSS Entity MOSS Self Paced
My Site
Image
…MiddlewareMOSS
Webpart
• Agencement de webparts sur la page d’accueil
d’un site / sous-site
• Edition de paramètres
• Méthode pour développer ses propres • Méthode pour développer ses propres
webparts
– Création d’une feature avec stsdev
Utilisation d’une webpart OOTB
Modifier une page de webparts
avec Sharepoint Designer
Webservices
• Url permettant d’accéder aux webservicesd’un site sharepoint
– Exemple: http://{site_url}/_vti_bin/Search.asmx
– Exemple: http://{site_url}/_vti_bin/Sites.asmx– Exemple: http://{site_url}/_vti_bin/Sites.asmx
– Exemple: http://{site_url}/_vti_bin/Lists.asmx
– …
• Soap 1.1 et 1.2
• Référence: http://msdn.microsoft.com/en-us/library/cc752745.aspx
Webservices - Utilisation
Retour d’expérience
• Utilisation difficile
– Le contenu des requêtes et des réponses n’est pas
totalement défini dans le WSDL.
– Sur certaines plateformes, l'authentification NTLM – Sur certaines plateformes, l'authentification NTLM
peut poser des problèmes
• Problèmes de performances
Features
• Collection d’éléments sharepoint
• Activable pour:
– Ferme
– Application– Application
– Collection de sites
– Site
• Création d’un squelette avec STSDEV
Feature
Déploiement
• Manuellement en copiant des fichiers au bon endroit
• Packages auto-déployables (recommandé pour la prod)
Ajout automatique des permissions (CAS)– Ajout automatique des permissions (CAS)
– Etapes:
1. Créer un package de la solution avec « wspbuilder »
2. Ajouter la solution sur le « solution store » de la ferme
3. Déployer la solution sur la cible (application, site, …)
4. Activer la / les feature(s)
Workflows
Workflows
3. Visual Studio 2008
• Nb. Déploiements illimité
• Grande liberté pour la conception
• Compétences en programmation indispensables
2. Sharepoint Designer
Pe
rso
nn
ali
s
é
2. Sharepoint Designer
• Pas de code => risque d’erreur limité
• Déploiement limité à une liste
1. Workflow prédéfini
• Paramétrable
• Pas d’édition du comportement
Gé
né
riq
ue
Etapes de conception d’un
workflow
Template
WorkflowAssocier
Liste /
Content Type
Assoc.
WorkflowDémarrer
Instance de
workflow
Elément de
liste (p/ex
un fichier)
Dév.
Paramètres
d’associationExécuter
Fin
Paramètres
d’initiation
Workflows
• 2 types:
– Workflow séquentiel
– Machine à état
• Intégration de formulaires InfoPath• Intégration de formulaires InfoPath
– Association
– Initiation
– Tâche
– Modification
Utilisation d’un workflow
prédéfini (1)
Visual Studio
• Développement de features
– Définition de sites / listes / colonnes / content types / menus, etc.
– Workflows
– Webparts– Webparts
• W2003 Server, MOSS 2007 et VS2008
• DLL Microsoft.Sharepoint.dll pour utiliser l’API Sharepoint
• Débuggage en s’attachant au processus sharepoint
Modèle objetWSSWSS 3.03.0 MOSS 2007MOSS 2007
Microsoft.SharePoint.dll Microsoft.SharePoint.dll
Microsoft.Office.Server.dll
Microsoft.Office.Server.Publishing.dll
Microsoft.Office.Server.Policy.dll
Microsoft.Office.Server.Search.dllMicrosoft.Office.Server.Search.dll
Microsoft.SharePoint.Portal.dll
Microsoft.Office.Workflow.Tasks.dll
Microsoft.SharePoint.Publishing.dll
Microsoft.SharePoint.Workflow.Actions.
dll
.NET managed API
Développement de workflow
avec VS 2008
WorkflowCreationEnquetes.dll- WorkflowCreationEnquetes.Workflow1
Développement de workflow
avec VS 2008
2. Autres outils
• stsadm – administration de sharepoint en ligne de commande.
• stsdev – création de squelettes pour le développement de features dans VS 2008 http://www.codeplex.com/stsdev
• guidgen – générateur de guid• guidgen – générateur de guid
• reflector – explorateur de classes pour des composants .NET
• wspbuilder – création de packages
• SharePoint SmartTemplates for Visual Studio -http://www.codeplex.com/smarttemplates
WSS ↔ Moss
Le choix
OOTB
• Layouts de base
• Sites prédéfinis (blogs, équipe, etc.)
• Sécurité, gestion des droits, synchronisation avec l’AD
• Système de plugins (features)• Système de plugins (features)
• Moteur de workflows
• Moteur de recherche
• Interfaces pour l’administration
• Webparts OOTB (calendrier, liste de contacts, etc.)
WSS ↔ MOSS
• Windows Sharepoint Services (WSS v3)– Contient les briques de bases
– Fourni avec Windows 2003 Server
• Microsoft Office Sharepoint Server (MOSS 2007)– Licence séparée
– Apporte des outils supplémentaires– Apporte des outils supplémentaires
WSS 3.0 Moss 2007
Standard
Moss 2007
Enterprise
Collaboration √ √ √
Portal √ √
Enterprise Search √ √
Enterprise Content Management √ √
Business Process & Forms √
Business Intelligence √
Licensed for Internet/Extranet √ √ √
WSS ↔ MOSS
• WSS3– Lists and document libraries
– Security
– Site templates for team collaboration
– Prebuilt Web Parts
– Management utilities
– Programming model– Programming model
• Moss 2007– Portal site templates
– Content management applications
– Business intelligence (BI) applications
– Forms management
– Shared services
– Single sign-on (SSO)
– Advanced Web Parts
– Advanced management utilities
Source: http://www.directionsonmicrosoft.com/sample/DOMIS/update/2007/04apr/0407s2tpa_sb.htm
Références
• Open source– Codeplex open source project community -
http://www.codeplex.com/
• Articles– Sharepoint is an Awesome Dev App Platform -
http://blogs.msdn.com/joelo/archive/2007/09/24/sharepoint-http://blogs.msdn.com/joelo/archive/2007/09/24/sharepoint-is-an-awesome-dev-app-platform.aspx
– Sharepoint is not a good development platform -http://codebetter.com/blogs/jeffrey.palermo/archive/2007/09/13/sharepoint-is-not-a-good-development-platform.aspx
– Sharepoint is a good development platform for applications -http://andrewconnell.com/blog/archive/2007/09/24/6116.aspx