Bien comprendre le nouveau modèle Apps de SharePoint 2013

Post on 11-Jul-2015

609 views 0 download

Transcript of Bien comprendre le nouveau modèle Apps de SharePoint 2013

Bien comprendre le nouveau modèle Apps de SharePoint 2013SharePoint Saturday – MONTRÉAL8 février 2014 – February 8th 2014

Merc i à nos command i t a i r es !

Thanks to ou r sponso rs !

| 3

• Spécialiste SharePoint

• Architecte / Consultant / Formateur / Développeur

@lplavoie

louis-philippe.lavoie@gsoft.com

Suis-je?

Louis-Philippe Lavoie

http://www.gsoft.com/fr/blogue?categorie=sharepoint

Qui

| 4

Plan de

Présentation

Théorie1

Pratique2

| 5

Petit

Sondage

| 6

La Théorie1

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

Qu’est-ce qu’une

APP SharePoint 2013?

Quoi

Hébergé sur la ferme

JavaScript et HTML seulement

Sécurité

Directe

Identité de l’usager

| 8

SharePoint

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

Provider

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

Auto

Hosted

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

Sécurité et

Identité

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

Obtenir et

Utiliser

| 13

CHOISIR LE BON

API

| 14

Accès aux

Données

Données SharePoint

Données externes

| 15

La Pratique2

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

RECOMMENDATIONS

OFFICIELLES

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

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

APPLICATIF SOUS

SharePoint 2013

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

Différences

Fondamentales

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

BUFFET

OUVERT

| 21

Vers l’infini

Et l’au-delà!

SharePoint

(local)

JSLink

Services Web

(Farm Sltn)

Application

RH

SharePoint Online

Auto Hosted

App

Azure Worker

Process

Sandbox

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

Apps pour

SharePoint Online

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

À

Savoir

| 24

En Manchette

INFOPATH EST FINALEMENT

MORT

https://sps-528fad6733fd9e.spsMtl.dev/MonApp

Host Web

| 25

Questions de

Contexte

(Site

SharePoint)Données

App Web

Données et

pages à créer1 … 1

Direct

OAuth

RequestExecutor

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

Déploiement

d’Éléments

| 27

Références

Rapides

sur:

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

CRÉER UNE

APP

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

EN

RÉSUMÉ

Espace de Projet

Modifications sur un (gabarit de) site existant

Identité de l’usager

Plusieurs instances (1 par projet)

Portail de Gestion de Projet

Données applicatives + liens sur les sites de projet

Identité de l’usager + accès système

Installé à un endroit dans la ferme

| 30

CAS

D’Étude

Farm ou (Sandbox + JS)

Apps

Modification visuelle sur un contenu SharePoint

(Super-Calendrier, liste de tâches animée, carrousel d’images, etc.)

N par site

Données SharePoint

WebPart météo

N par site

Cadre (iFrame) seulement

Données externes

| 31

CAS

D’Étude

JSLink/CSR (JavaScript)

Apps

| 32

Questions

Merci!

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