Autorisations des compléments dans SharePoint
Avant de lire cet article, vous devez connaître le contenu de la rubrique Autorisation et authentification de compléments SharePoint.
Un complément SharePoint demande les autorisations dont il a besoin pendant l’installation auprès de l’utilisateur qui effectue l’installation. Le développeur d’un complément doit demander, par le biais du fichier manifeste du complément, les autorisations dont le complément en question a besoin pour être exécuté. (Les applications web et périphérique qui accèdent à SharePoint, mais qui ne sont pas installées sur des sites web SharePoint, doivent disposer d’autorisations lors de l’exécution par l’utilisateur qui exécute le complément. Pour plus d’informations, consultez la rubrique Flux OAuth avec code d’autorisation pour les compléments SharePoint.)
Les utilisateurs ne peuvent accorder que les autorisations dont ils disposent. L’utilisateur doit accorder toutes les autorisations demandées par un complément ou n’en accorder aucune. Les accords sélectifs ne sont pas possibles. (Pour les compléments qui demandent des autorisations à la volée, seul un utilisateur disposant des autorisations de gestion des ressources SharePoint auxquelles le complément cherche à accéder peut exécuter le complément, même si le complément demande uniquement des autorisations moins élevées, comme la lecture.)
Les autorisations accordées au complément sont également stockées dans la base de données de contenu de la batterie de serveurs SharePoint ou de la location SharePoint Online. Ils ne sont pas stockés avec un service de jeton sécurisé, tel que Microsoft Azure Access Control Service (ACS). Lorsqu’un utilisateur accorde pour la première fois des autorisations de complément, SharePoint obtient des informations sur le complément à partir d’ACS. SharePoint stocke ensuite les informations de base sur le complément dans le service de gestion des compléments et la base de données de contenu, ainsi que les autorisations du complément. Pour plus d’informations sur ACS, consultez Création de compléments SharePoint qui utilisent desd’autorisation à faible niveau de fiabilité.
Important
Azure Access Control (ACS), a service of Azure Active Directory (Azure AD), will be retired on November 7, 2018. This retirement does not impact the SharePoint Add-in model, which uses the https://accounts.accesscontrol.windows.net hostname (which is not impacted by this retirement). For more information, see Impact of Azure Access Control retirement for SharePoint Add-ins.
Si un objet disposant d’accords d’autorisation pour un complément est supprimé, les accords correspondants sont également supprimés. Lorsqu’un objet disposant d’accords d’autorisation pour un complément est recyclé, SharePoint ne modifie pas l’accord correspondant. Ainsi, si l’objet est restauré à partir de la Corbeille, l’accord est resté intact.
Si un complément est supprimé, toutes les autorisations octroyées à ce complément au niveau de l'étendue d'où il a été supprimé sont révoquées. Cette procédure garantit que le complément ne peut pas utiliser ses informations d'identification pour continuer à accéder à distance aux ressources SharePoint protégées une fois qu'un utilisateur a supprimé le complément de SharePoint.
Types d’autorisations de complément et d’étendues d’autorisation
Un Complément SharePoint utilise les demandes d'autorisation pour spécifier les autorisations dont il a besoin pour fonctionner correctement. Les demandes d'autorisation spécifient à la fois les droits dont un complément a besoin et l'étendue au niveau de laquelle il a besoin des droits. Les autorisations sont demandées dans le cadre du manifeste de complément.
Les étendues de demande d’autorisation indiquent l’emplacement dans la hiérarchie SharePoint où une demande d’autorisation s’applique.
Notes
Un complément SharePoint possède sa propre identité et c’est un principal de sécurité, appelé principal de complément. Comme les utilisateurs et les groupes, un principal de complément dispose de certains droits ou autorisations. Le principal de complément dispose de droits de contrôle total sur le site web de complément, il doit donc demander uniquement des autorisations aux ressources SharePoint sur le site web hôte ou pour d’autres emplacements en dehors du site web de complément. Pour plus d’informations sur le site web de complément, consultez la rubrique Aspects importants du contexte de développement et de l’architecture des compléments SharePoint et Héberger des sites web, des sites web de complément et des composants SharePoint dans SharePoint.
SharePoint prend en charge quatre étendues d’autorisation différentes au sein de la base de données de contenu et du client, comme illustré dans le Tableau 1. Les étendues d’autorisation sont intitulées comme des URI, avec un préfixe « http: », mais ce ne sont pas des URL et elles ne contiennent aucun espace réservé. Les étendues d’autorisation présentées dans ce tableau et cet article sont des chaînes littérales.
Tableau 1. Les URI d’étendue de demande d’autorisation de complément SharePoint et les descriptions
| Étendue | URI d’étendue | Description |
|---|---|---|
| Location | http://sharepoint/content/tenant | Location où le complément est installé. Inclut tous les enfants de cette étendue. |
| Collection de sites | http://sharepoint/content/sitecollection | Collection de sites dans laquelle le complément est installé. Inclut tous les enfants de cette étendue. |
| Site web | http://sharepoint/content/sitecollection/web | Site web où le complément est installé. Inclut tous les enfants de cette étendue. |
| Répertorier | http://sharepoint/content/sitecollection/web/list | Liste unique sur le site web où le complément est installé. Lorsque l’utilisateur qui installe le complément est invité à accorder des autorisations, la boîte de dialogue lui permet de sélectionner une liste pour laquelle des autorisations sont accordées au complément. Si le complément a besoin d’une autorisation pour plusieurs listes, il doit demander l’autorisation pour l’étendue web. Par ailleurs, comme vous, le développeur, n’a aucun moyen de contrôler la liste choisie par l’utilisateur ou de lui indiquer quelle liste choisir. Vous devez utiliser l’étendue web s’il y a une liste pour laquelle des autorisations doivent être accordées à votre complément. Il existe toutefois un moyen de limiter le choix de l’utilisateur à certains sous-ensembles de listes ; consultez la rubrique Étendue de demande d’autorisation avec les propriétés associées. |
Si un complément reçoit une autorisation pour l'une des étendues, cette autorisation s'applique à tous les enfants de l'étendue. Par exemple, si un complément reçoit une autorisation pour un site web, le complément dispose également d'une autorisation pour chaque liste figurant dans le site web et tous les éléments de liste figurant dans chaque liste.
Étant donné que les demandes d’autorisation sont effectuées sans informations sur la topologie de la collection de sites où le complément est installé, l’étendue est exprimée en tant que type plutôt qu’en tant qu’URL d’une instance spécifique. Ces types d’étendue sont exprimés sous forme d’URI. Les autorisations sur les ressources stockées dans la base de données de contenu SharePoint sont organisées sous l’URI suivant : http://sharepoint/content.
Différences entre les droits d’autorisations de complément et les droits des utilisateurs
Les autorisations indiquent les activités qu'un complément est autorisé à effectuer au sein de l'étendue demandée. SharePoint prend en charge quatre niveaux de droits dans la base de données de contenu. Pour chaque étendue, un complément peut avoir les droits suivants :
- Lecture
- Écriture
- Gérer
- Contrôle total
Notes
Pour plus d’informations sur ce qui est inclus dans les droits Lecture, Écriture, Gestion et Contrôle total, consultez la rubrique Planifier la gestion des autorisations de complément.
Notes
Ces droits correspondent aux niveaux d’autorisation des utilisateurs par défaut de SharePoint : Lecteur, Collaborateur, Concepteur et Contrôle total. Pour plus d’informations sur les niveaux d’autorisation des utilisateurs, consultez la rubrique Autorisations utilisateur et niveaux d’autorisation. Les noms des droits des compléments ne correspondent pas aux noms des droits des rôles utilisateur SharePoint, pour éviter toute confusion entre les droits des rôles utilisateur et les droits des compléments. Comme la personnalisation des autorisations associées à des rôles utilisateur SharePoint n’affecte pas les niveaux de demande d’autorisation de complément, les noms des droits des compléments ne correspondent pas aux rôles utilisateur SharePoint correspondants, à l’exception du droit Contrôle total, qui ne peut pas être personnalisé par le biais de l’interface utilisateur de gestion des autorisations.
De plus :
Pour le complément de recherche uniquement, un complément peut disposer du droit Requête.
Pour certaines étendues Microsoft Project Server 2013, il existe également le droit SubmitStatus ou le droit Elevate. Pour la plupart des étendues de Project Server 2013, seules les fonctionnalités lecture et écriture sont disponibles. Pour plus d’informations, consultez la section Comprendre les types d’autorisations de complément et d’étendues d’autorisation de cet article.
Pour la taxonomie, seuls des droits Lecture et Écriture sont disponibles.
Notes
Les applications Office Store affichent certaines restrictions quant au type de droits qu’un complément peut demander. Pour plus d’informations, consultez la section Types d’autorisations de compléments ou d’étendues d’autorisation traitée précédemment dans cet article.
Contrairement aux rôles d'utilisateurs SharePoint, ces niveaux de droits ne sont pas personnalisables. Cela permet de garantir que lorsqu'un complément reçoit une demande d'autorisation, le complément est assuré de disposer d'un jeu prévisible de fonctionnalités et ne doit pas prendre en compte l'éventualité de recevoir moins d'autorisations que celles qu'il attend.
Un utilisateur ne peut pas octroyer d'autorisations dont il ne dispose pas lui-même à un complément. S'il tente d'installer un complément qui demande plus d'autorisations que lui n'en possède, un message d'erreur apparaît à l'écran et l'informe qu'il ne dispose pas des autorisations suffisantes pour accorder au complément les autorisations qu'il demande.
Les autorisations non connues de SharePoint sont ignorées. Cela signifie que, si un complément demande une autorisation que SharePoint ne reconnaît pas, le complément peut toujours être installé, mais l'utilisateur n'est pas invité à octroyer l'autorisation et l'autorisation n'est pas octroyée au complément.
Étendues et autorisations disponibles, et restrictions applicables aux autorisations d’applications Office Store
Des étendues différentes présentent des jeux de droits différents pouvant être demandés par un complément. Cette section décrit les jeux de droits qui sont disponibles pour chaque étendue. En outre, elle met en évidence les limites applicables aux Compléments SharePoint qui sont en vente dans l'Office Store.
Droits des applications de l'Office Store
Seuls les droits Lecture, Écriture et Gestion sont autorisés pour les applications de l'Office Store. Si vous essayez de soumettre à l'Office Store une application nécessitant des droits Contrôle total, la soumission de votre application est bloquée. Étant donné que le bloc se trouve dans le pipeline de soumission de l'Office Store, les applications qui nécessitent des autorisations supérieures à l'autorisation Gestion peuvent quand même être déployées via le catalogue de compléments.
Étendues de demande d’autorisation pour le contenu de liste et le contenu de bibliothèque
Le Tableau 2 illustre l’étendue de demande d’autorisation pour le contenu de liste et de bibliothèque. Il répertorie également les droits pouvant être spécifiés pour chaque URI d’étendue.
Notes
Les URI utilisés dans le Tableau 2 sont des valeurs littérales.
Tableau 2. Les URI d’étendue d’autorisation de complément SharePoint et les droits disponibles
| URI d’étendue | Droits disponibles |
|---|---|
| http://sharepoint/content/sitecollection | Lecture, Écriture, Gestion, Contrôle total |
| http://sharepoint/content/sitecollection/web | Lecture, Écriture, Gestion, Contrôle total |
| http://sharepoint/content/sitecollection/web/list | Lecture, Écriture, Gestion, Contrôle total |
| http://sharepoint/content/tenant | Lecture, Écriture, Gestion, Contrôle total |
Le code suivant illustre la façon d'utiliser les étendues d'autorisation et les droits dans le fichier AppManifest.xml file. Dans le premier exemple, un complément demande l'accès Écriture à l'étendue de liste.
<?xml version="1.0" encoding="utf-8" ?>
<App xmlns="http://schemas.microsoft.com/sharepoint/2012/app/manifest"
ProductID="{4a07f3bd-803d-45f2-a710-b9e944c3396e}"
Version="1.0.0.0"
SharePointMinVersion="15.0.0.0"
Name="MySampleAddIn"
>
<Properties>
<Title>My Sample Add-in</Title>
<StartPage>~remoteAppUrl/Home.aspx?{StandardTokens}</StartPage>
</Properties>
<AppPrincipal>
<RemoteWebApplication ClientId="1ee82b34-7c1b-471b-b27e-ff272accd564" />
</AppPrincipal>
<AppPermissionRequests>
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web/list" Right="Write"/>
</AppPermissionRequests>
</App>
Le code suivant illustre un complément demandant l’accès Lecture à l’étendue du site web et l’accès Lecture à l’étendue de liste.
<?xml version="1.0" encoding="utf-8" ?>
<App xmlns="http://schemas.microsoft.com/sharepoint/2012/app/manifest"
ProductID="{4a07f3bd-803d-45f2-a710-b9e944c3396e}"
Version="1.0.0.0"
SharePointMinVersion="15.0.0.0"
Name="MySampleAddIn"
>
<Properties>
<Title>My Sample Add-in</Title>
<StartPage>~remoteAppUrl/Home.aspx?{StandardTokens}</StartPage>
</Properties>
<AppPrincipal>
<RemoteWebApplication ClientId="6daebfdd-6516-4506-a7a9-168862921986" />
</AppPrincipal>
<AppPermissionRequests>
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web" Right="Read"/>
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web/list" Right="Write"/>
</AppPermissionRequests>
</App>
Étendues de demande d’autorisation pour les autres fonctionnalités SharePoint
L’étendue de demande d’autorisation pour les autres fonctionnalités SharePoint est répertoriée dans les tableaux suivants.
Notes
Les URI utilisés dans les tableaux sont des valeurs littérales.
Le tableau 3 indique l’étendue de la demande d’autorisation pour Business Connectivity Services (BCS). Il répertorie également les droits qui peuvent être spécifiés pour cet URI d’étendue.
Tableau 3. URI d’étendue de demande d’autorisation du complément BCS et droits disponibles
| URI d’étendue | Droits disponibles |
|---|---|
| http://sharepoint/bcs/connection | Lecture |
Notes
Pour plus d’informations sur l’étendue de demande d’autorisation de complément BCS, consultez la rubrique Business Connectivity Services dans SharePoint.
Le tableau 4 montre l’étendue de demande d’autorisation pour le droit Recherche. Il répertorie également les droits qui peuvent être spécifiés pour cet URI d’étendue.
Tableau 4. URI d'étendue de demande d'autorisation du complément de recherche et droits disponibles
| URI d’étendue | Droits disponibles |
|---|---|
| http://sharepoint/search | QueryAsUserIgnoreAppPrincipal |
Notes
Pour plus d’informations sur l’étendue de demande d’autorisation de complément de recherche, consultez la rubrique Recherche dans SharePoint.
Le Tableau 5 illustre l'étendue de demande d'autorisation pour Project Server 2013. Il indique également les droits pouvant être spécifiés pour chaque URI d'étendue. > [!NOTE] > Un complément qui utilise les services et fonctionnalités Project Server 2013 doit être testé dans un environnement disposant des services et fonctionnalités Project Server requis. L’assemblage du fournisseur d’autorisation Project Server 2013 qui connaît les étendues d’autorisation Project Server 2013 n’est pas installé par défaut avec SharePoint Server. Pour plus d’informations, consultez la documentation pour les développeurs de Project Server 2013.
Tableau 5. Les URI d’étendue de demande d’autorisation de complément Project Server et les droits disponibles
| Étendue | Droits disponibles |
|---|---|
| http://sharepoint/projectserver | Gestion |
| http://sharepoint/projectserver/projects | Lecture, Écriture |
| http://sharepoint/projectserver/projects/project | Lecture, Écriture |
| http://sharepoint/projectserver/enterpriseresources | Lecture, Écriture |
| http://sharepoint/projectserver/statusing | SubmitStatus |
| http://sharepoint/projectserver/reporting | Lecture |
| http://sharepoint/projectserver/workflow | Élever |
Le Tableau 6 illustre l'étendue de demande d'autorisation pour les fonctionnalités sociales. Il indique également les droits pouvant être spécifiés pour chaque URI d'étendue.
Tableau 6. URI d'étendue de demande d'autorisation du complément des fonctionnalités sociales et droits disponibles
| Nom de l'étendue | Description | Droits disponibles |
|---|---|---|
Profils utilisateurhttp://sharepoint/social/tenant |
L'étendue de demande d'autorisation utilisé pour accéder à tous les profils utilisateur. Peut être modifiée uniquement l'image de profil ; toutes les autres propriétés de profil utilisateur sont en lecture seule pour Compléments SharePoint. Doit être installé par un administrateur de clients. | Lecture, Écriture, Gestion, Contrôle total |
Noyauhttp://sharepoint/social/core |
L'étendue de demande d'autorisation utilisé pour accéder à l'utilisateur suivi de contenu et partagées de métadonnées qui sont utilisée par les fonctionnalités de création de Microblogs. Cette étendue s'applique uniquement aux sites personnels qui prennent en charge la suite de contenu. Si l'application s'installe sur n'importe quel autre type de site, utilisez l'étendue de client. | Lecture, Écriture, Gestion, Contrôle total |
Les flux d’actualitéshttp://sharepoint/social/microfeed |
L'étendue de demande d'autorisation permettant d'accéder aux flux de l'utilisateur ou le flux de l'équipe. Cette étendue s'applique à des sites personnels qui prennent en charge les Microblogs ou à des sites d'équipe dans lequel la fonctionnalité de Flux de Site est activée. Si l'application s'installe sur n'importe quel autre type de site, utilisez l'étendue de client. | Lecture, Écriture, Gestion, Contrôle total |
http://sharepoint/social/trimming |
Cette étendue de demande d'autorisation permet de déterminer s'il faut afficher le contenu limités de sécurité dans le flux sociaux aux applications. Si cette autorisation de niveau de confiance élevé n'est pas accordée, certains contenus (tels que les activités sur les documents et les sites de l'application n'est pas autorisé à) est tronqué à partir des données de flux qui sont renvoyées à l'application, même si l'utilisateur dispose d'autorisations suffisantes. Cette autorisation doit être ajoutée manuellement au fichier de manifeste de l'application. | Lecture, Écriture, Gestion, Contrôle total |
Notes
Pour plus d’informations sur l’étendue de la demande d’autorisation de complément pour l’accès aux fonctionnalités sociales, consultez la rubrique relative aux demandes d’autorisation de complément concernant les fonctionnalités sociales.
Le tableau 7 montre l’étendue de demande d’autorisation pour la taxonomie. Il répertorie également les droits qui peuvent être spécifiés pour cet URI d’étendue.
Tableau 7. URI d'étendue de demande d'autorisation du complément de taxonomie et droits disponibles
| URI d’étendue | Droits disponibles |
|---|---|
| http://sharepoint/taxonomy | Lecture, Écriture |
Notes
Pour plus d’informations sur l’étendue de demande d’autorisation de complément de taxonomie, consultez la rubrique Ajout de fonctionnalités SharePoint.
Étendue de demande d’autorisation avec les propriétés associées
L’étendue de demande d’autorisation de liste possède une propriété facultative supplémentaire. L’étendue de liste peut prendre une propriété portant le nom BaseTemplateId et une valeur entière correspondant à un modèle de base de liste, comme illustré dans l’exemple de marque de révision suivant. Sans ID de modèle de base, l’utilisateur qui installe le complément peut lui accorder une autorisation pour une liste parmi toutes les listes du site web. La spécification d’un ID de modèle de base limite le choix de l’utilisateur à l’ensemble de listes qui correspond à ce qui est spécifié par la propriété BaseTemplateId.
La propriété BaseTemplateId est un élément enfant, et non un attribut de l'élément AppPermissionRequest. Le code suivant illustre l'utilisation de la propriété BaseTemplateId.
<AppPermissionRequest Scope="http://sharepoint/content/sitecollection/web/list" Right="Write">
<Property Name="BaseTemplateId" Value="101"/>
</AppPermissionRequest>
Tableau 8. Étendue de demande d’autorisation avec les propriétés associées
| URI d’étendue | Propriété | Type |
|---|---|---|
| http://sharepoint/content/sitecollection/web/list | BaseTemplateId | Entier |
Notes
Pour plus d'informations sur BaseTemplateId et la valeur d'entier correspondante pour le modèle de base de liste, voir l'attribut Type de l' List, élément (List).
Gestion et résolution des problèmes d’autorisations de complément
Les compléments SharePoint installés sur SharePoint disposent d’autorisations accordées lors de leur installation. Les compléments installés sur d’autres plateformes, mais qui accèdent à SharePoint, disposent d’autorisations accordées lors de l’exécution par l’utilisateur qui exécute le complément. Parfois, le premier type de complément peut perdre ses autorisations. Vous pouvez accorder de nouveau des autorisations à un complément en suivant les étapes ci-après :
Dans la page Contenu du site du site web pour lequel le complément semble avoir perdu ses autorisations, sélectionnez le bouton ... sur la mosaïque du complément. Cette action ouvre une légende avec un lien AUTORISATIONS ou un autre bouton ....
Sélectionnez le lien AUTORISATIONS s’il apparaît et ignorez l’étape suivante, ou sélectionnez le bouton ....
Sélectionnez le lien Autorisations.
Dans la page qui s’ouvre, sélectionnez ici dans la dernière phrase. Cela accorde de nouveau ses autorisations au complément et renvoie le navigateur vers la page Contenu du site.

Lorsque vous développez ou résolvez les problèmes d'un complément, vous souhaiterez peut-être modifier ou réattribuer les autorisations d'un complément qui a déjà été installé. Pour ce faire, suivez les étapes ci-après :
Accédez à
http://<SharePointWebSite>/_layouts/15/AppInv.aspx, où est l’URL du site web où le complément est installé. Veillez à n’ajouter aucun paramètre de requête dans l’URL. Le formulaire dont vous avez besoin s’affiche dans cette page uniquement si l’URL est parfaitement identique à celle illustrée.Entrez l’ID du complément, également appelé ID client, dans la zone ID du complément, puis sélectionnez Recherche. Les autres zones du formulaire sont alors remplies avec les informations concernant le complément.
Renseignez la zone Code XML de la demande d’autorisation avec des demandes d’autorisation, exactement comme vous les saisiriez dans un manifeste de complément. Pour consulter des exemples, consultez la rubrique Étendues de demande d’autorisation pour le contenu de liste et le contenu de bibliothèque. Pour plus d’informations sur la syntaxe complète, consultez la rubrique Élément AppPermissionRequest.
Sélectionnez Créer.
Les autorisations d’un complément pour une étendue spécifique sont révoquées lorsque le complément est supprimé de cette étendue.
Pourquoi les compléments ne peuvent-ils pas être masqués pour les utilisateurs
Tout utilisateur possédant des droits de navigation sur un site web SharePoint peut lancer un complément SharePoint installé sur ce site. Les possibilités d’action de l’utilisateur avec le complément dépendent des autres autorisations de l’utilisateur et du type de stratégie d’autorisation utilisé par le complément. Si l’utilisateur essaie d’accomplir avec le complément une action qu’il n’est pas autorisé à faire et si l’appel vers SharePoint utilise la stratégie utilisateur+complément, l’appel échoue.