7. Qu’est-ce qu’une
APP SharePoint 2013?
Apps for SharePoint are self-contained pieces of functionality that extend
the capabilities of a SharePoint website. Apps integrate the best of the web
and SharePoint; they are targeted, lightweight, and easy-to-use, and do a
great job at solving a user need
SharePoint 2013 : Le contenu d’un site est appelé « App »
Listes, Librairies, Calendriers, …
Selon la documentation : 3 types d’Apps
|7
9. Provider
Hosted
Quoi
Hébergé sur serveur indépendant
N’importe quel langage
Sécurité
OAuth ou Cross-domain library
Assignation de permissions (« I trust this App »)
Peut utiliser d’autres identités
|9
10. Auto
Hosted
Quoi
Azure Web Site, SQL Azure
Seulement dans SharePoint Online
Sécurité
OAuth ou Cross-domain library
Assignation de permissions (« I trust this App »)
Peut utiliser d’autres identités
| 10
11. Sécurité et
Identité
3 contextes de sécurité
User-only
App
User + App
4 types de permissions
Read
Write
Manage
Full Control
* + Droits spéciaux pour les services (Search, BCS, Workflow …)
Dès qu’on parle d’identité:
OAuth, Cross-domain JavaScript ou certificat SSL
| 11
12. Obtenir et
Utiliser
Installation
App Store et App Catalog
Formats
AppPart : « cadre » (iFrame)
Comme un définition de WebPart
Code est ailleurs (dans App Web, sur Azure, autre serveur)
| 12
16. RECOMMENDATIONS
OFFICIELLES
Develop an app whenever you can
Design apps or NCSSs for end users and design farm solutions for
administrators
Design NCSSs for branding and template-like extensions
All future investments will go to making the new SharePoint app model
richer and more powerful. Accordingly, we recommend that all new
development should use the new app model whenever possible
In scenarios where you have to develop a farm solution or coded
sandboxed solution, we recommend that you design it so that it can easily
evolve toward a more loosely coupled development model
| 16
17. APPLICATIF SOUS
SharePoint 2013
Farm Solution (Code sur serveur)
Web services
Sandbox
Avec code : Désuet NE PAS UTILISER
No-Code Sandbox Solution (NCSS)
Client Application (Desktop)
C# + CSOM
Tout autre langage + Services REST
Provider Hosted App
Tout language + Services REST
Auto Hosted App
| 17
18. APPLICATIF SOUS
SharePoint 2013
JavaScript
SharePoint Hosted App
Code dans CEWP
JSLink / Client Side Rendering
Display Templates (Search)
Script PowerShell ( + Task Scheduler)
App pour Office (Word, Excel)
Mobile App
| 18
19. Différences
Fondamentales
Solution de ferme
Installation par un administrateur
Exécute sur le serveur
Portée : Ferme à Web
Apps or NCSS
Approbation d’un administrateur
Exécute hors-serveur
Installation par les usagers
Identité propre (Apps)
Portée : Web ou collection de site
JavaScript (JSLink, Display Templates)
Idéal pour toutes modifications de l’affichage d’un composant existant
| 19
20. BUFFET
OUVERT
Combiner 2 ou 3 types d’Apps (Solution Hybride)
… Avec des Farm Solutions, Sandbox, PowerShell, etc.
Apps pure : Dans les cas simples seulement
Repenser votre architecture
Avant : Monolithique (un seul WSP)
Maintenant : Combinaison (best practices)
| 20
21. Vers l’infini
Et l’au-delà!
SharePoint Online
SharePoint
(local)
JSLink
Sandbox
Services Web
(Farm Sltn)
Auto Hosted
App
Azure Worker
Process
Application
RH
| 21
22. Apps pour
SharePoint Online
No-Code Sandbox Solution (NCSS)
Pour provisionner des entités SharePoint (champs, listes, pages)
Auto Hosted App
Logique (code) sous Azure
Peut s’intégrer avec vos services on-premises
SharePoint Hosted App
JavaScript + HTML uniquement
Peut s’intégrer avec vos services on-premises
“Because Microsoft handles all the management of SharePoint Online,
there is no need for administrative extensions”
Version de SharePoint Online change sans avertissement
pas stable, pas documentée
| 22
23. À
Savoir
Dans le App Web:
Branding
Possible de réutiliser la feuille de style (thème)
Navigation
Vous n’êtes pas dans votre site SharePoint
(donc pas de navigation)
WebParts
Une grande partie non-disponible
Permissions, Settings, _layouts
Formulaires
À refaire presque au complet
PeoplePicker, TaxonomyPicker
| 23
26. Déploiement
d’Éléments
App : Ne peut pas déployer d’éléments dans son Host Web
… Ah oui en fait (Full Control + code)
Chaque type d’architecture a des possibilités différentes
Ex: Pas de code en Sandbox, Auto Hosted vs Cloud, Branding
Farm-only:
•
•
•
•
•
Définitions de Site
Contrôle délégués
Thèmes
Groupes d’actions (Ruban)
Contrôles (.ascx)
| 26
28. CRÉER UNE
APP
Outils
Visual Studio 2012 et +
Visual Studio Online
Napa
N’importe quel éditeur
Site SharePoint de type « Developer Site »
SharePoint Online (pour faire Auto Hosted Apps)
Serveur dédié (pour faire Provider Hosted Apps)
| 28
29. EN
RÉSUMÉ
Beaucoup de choix (plus que 3!!)
Il faut les connaitre pour bien choisir
Evolve toward a more loosely coupled development model
Avec le bon choix et des bonnes pratiques :
Le développement applicatif est beaucoup plus
flexible en SharePoint 2013
| 29
30. CAS
D’Étude
Espace de Projet
Farm ou (Sandbox + JS)
Modifications sur un (gabarit de) site existant
Identité de l’usager
Plusieurs instances (1 par projet)
Portail de Gestion de Projet
Apps
Données applicatives + liens sur les sites de projet
Identité de l’usager + accès système
Installé à un endroit dans la ferme
| 30
31. CAS
D’Étude
Modification visuelle sur un contenu SharePoint
JSLink/CSR (JavaScript)
(Super-Calendrier, liste de tâches animée, carrousel d’images, etc.)
N par site
Données SharePoint
WebPart météo
Apps
N par site
Cadre (iFrame) seulement
Données externes
| 31
33.
Visitez-nous! – Visit Us!
Site principal / Main site – www.sharepointquebec.org
Twitter - @guspquebec
Facebook - http://www.facebook.com/groups/206445679432304/
Meetup- http://www.meetup.com/guspquebec/
LinkedIn - http://www.linkedin.com/groups?gid=149597
Notas del editor
SP2013Équipe de développementAppsJavaScript .NET / MVC4
http://msdn.microsoft.com/en-us/library/office/fp179892.aspxYou cangrantrights to youridentity (throughOAuthtokens)The application canpersistgrantedtokens (with the Secure Store) and so continue to act on yourbehalfevenwhenyou are not there
“End users” in this context are site-collection administrators, website owners, andwebsite members.Looselycoupled : Uniquement des services webs sur le serveur, le reste (UI, business rules), ailleurs