Utilisation de SharePoint (délégué)

REMARQUE : pour les projets utilisant Adobe Sharepoint (https://adobe.sharepoint.com), veuillez continuer ici.

Si vous utilisez SharePoint comme source de contenu, AEM utilise pour cela une application Microsoft Azure enregistrée. Des autorisations déléguées sont définies pour cette application afin de permettre au service d’accéder à SharePoint au nom d’un utilisateur. Cet utilisateur doit être enregistré dans le projet qui utilise SharePoint.

Les services peuvent également s’authentifier en tant qu’application et utiliser les autorisations d’application pour accéder aux sites. Cela nécessite une configuration supplémentaire par un administrateur de site SharePoint qui peut accorder les autorisations pour l’application.

La configuration recommandée consiste à utiliser les autorisations d’application, car cela permet de réduire l’accès du service à un site SharePoint spécifique et ne nécessite pas de partager les secrets d’un utilisateur technique. Cela réduit également les problèmes liés à la rotation des mots de passe. Veuillez continuer ici pour obtenir des instructions sur la façon de le faire.

La section suivante décrit comment configurer les autorisations déléguées pour votre projet.

La configuration de SharePoint implique les étapes suivantes :

  1. Créez un dossier dans SharePoint qui sera la racine du site web.
  2. Créez ou définissez l’utilisateur (technique) qui accédera au contenu SharePoint
  3. Partagez le dossier racine du site web avec cet utilisateur.
  4. Configurez le fstab.yaml avec le dossier correspondant
  5. Enregistrer l’utilisateur auprès du service

1. Créez le dossier racine du site web

Accédez à l’emplacement souhaité dans SharePoint et créez un dossier racine qui sera la racine de votre site web. Il est préférable de ne pas utiliser directement une racine de liste SharePoint, de sorte que vous disposiez d’un espace partagé pour que vos auteurs puissent placer des documents collatéraux, par exemple un dossier de brouillons, ou des documents de création.

Voici un exemple de structure de fichier, en utilisant le dossier website comme racine :

2. Créer ou définir l’utilisateur

Il est recommandé d’utiliser un utilisateur générique (ou technique) pour accéder au contenu au nom du service. Cette méthode est préférable à l’utilisation d’un compte utilisateur employé, car la portée exacte des fichiers auxquels l’utilisateur peut accéder peut être définie. De plus, il n'y a aucun risque de perdre l'accès aux dossiers si cet employé quitte l'entreprise.

Chaque entreprise ayant des procédures différentes pour créer des utilisateurs techniques, demandez à votre service informatique comment procéder.

3. Partager le dossier racine du site web

REMARQUE : pour les projets utilisant Adobe Sharepoint (https://adobe.sharepoint.com), consultez ici.

Assurez-vous que l’utilisateur du service dispose des droits de modification sur le dossier racine du site web. Pour ce faire, cliquez facilement sur le menu … et sélectionnez « Gérer l’accès ».

Ajoutez ensuite l’utilisateur générique (ou technique) via l’option « Accès direct ».

4. Configuration du fichier fstab.yaml

L’étape suivante consiste à configurer le point de montage dans le fstab.yaml pour qu’il pointe vers la racine du site web. Il se présente généralement sous la forme de

https://<tenant>.sharepoint.com/sites/<sp-site>/Shared%20Documents/website

Cela peut varier en fonction de la création du site et des listes SharePoint. Pour obtenir l’URL, la méthode la plus simple consiste à copier-coller la première partie à partir de l’adresse du navigateur, par exemple :

Ajoutez ensuite le reste manuellement (notez que la copie du lien partagé via l’interface utilisateur ajoute des informations inutiles et qu’il est préférable d’utiliser une représentation canonique de l’URL). Une fois l’URL composée, vous pouvez la tester en la saisissant à nouveau dans le navigateur. Vous devriez vous retrouver dans l’affichage des dossiers de la racine de votre site web.

Ensuite, mettez à jour le fstab.yaml en conséquence.

Par exemple :

mountpoints:
  /: https://adobeenterprisesupportaem.sharepoint.com/sites/hlx-test-project/Shared%20Documents/website

Pour finaliser la configuration, validez à nouveau le fstab.yaml dans la branche principale.

5. Enregistrer l’utilisateur

Vue d’ensemble

Pour que le service AEM puisse accéder au contenu créé, quelques informations et une configuration sont nécessaires. Le service AEM (une fonction cloud) accède à l’API MS Graph au nom d’un utilisateur configuré. Pour ce faire, il doit d’abord s’authentifier dans le contexte d’une Application. Ce point est important, car les portées fournies à l’application définissent l’autorisation dont dispose le service sur l’API Graph MS. Par exemple, il doit être autorisé à lire et à écrire des documents, mais pas à modifier le contrôle d’accès.

Une application est représentée sous la forme d’une « application d’entreprise » dans l’annuaire Active Directory correspondant d’un client. Les autorisations accordées à cette application d’entreprise définissent finalement ce à quoi le service peut accéder dans les ressources de ce client. Certaines autorisations doivent être approuvées par un administrateur Active Directory avant qu'un utilisateur puisse utiliser l'application. Ce que l’on appelle le « consentement administrateur » est un mécanisme permettant de vérifier et de contrôler les autorisations dont peuvent bénéficier les applications. Cela permet d’empêcher les applications douteuses d’amener les utilisateurs à faire confiance à une application qui n’est pas officielle. Disposer de l’étape de consentement administrateur supplémentaire permet à la sécurité informatique de contrôler les applications que les employés peuvent utiliser.

Accéder à l’interface utilisateur de configuration du service

Pour commencer, ouvrez l’interface utilisateur Configuration du service d’administration et saisissez l’URL GitHub de votre projet :

Ensuite, vous devez vous « connecter » avec votre utilisateur personnel qui a accès à la racine du site web. Cela permet de vérifier que seules des personnes disposant d’informations d’identification suffisantes peuvent gérer l’enregistrement de l’utilisateur.

1. Connectez-vous au portail d’inscription

Colonnes (contenu, images plein écran)

Affichage des applications d’entreprise dans le portail Azure

En supposant que, jusqu’à présent, aucune application d’entreprise Franklin ne soit présente dans Azure (Microsoft Entra Id)

Accéder au portail d’enregistrement Franklin

Accédez à https://admin.hlx.page/register, puis saisissez l’URL github du projet

Se connecter en tant qu'utilisateur non administrateur

Connectez-vous en tant qu’utilisateur ne dispose pas ’autorisations d’administrateur pour afficher un . erreur indiquant qu’elle doit être approuvée, c’est-à-dire que l’application nécessite le consentement administrateur.

Problème : l’application d’entreprise n’est pas enregistrée si un utilisateur ne se connecte jamais.

Se connecter en tant qu'utilisateur administrateur

Une solution consiste à se connecter en tant qu’utilisateur ne dispose des autorisations d’administrateur :

(notez qu’à ce stade, l’application d’entreprise n’est toujours pas enregistrée dans . azure)

Service d’enregistrement Franklin visible dans l’interface utilisateur

Si l’administrateur se connecte (sans cocher la case et accorder le consentement pour tout le monde), l’application Enterprise est présente.

Créer une application à l'aide de MSGraph ou Powershell

Vous pouvez également créer l’application d’entreprise via MSGraph ou Powershell.

Pour le rendre visible dans l’interface utilisateur d’Azure, vous devez également ajouter la balise WindowsAzureActiveDirectoryIntegratedApp . Vous pouvez le faire directement lors de la création de l’application.

Utilisation de l’explorateur de graphiques :

POST https://graph.microsoft.com/v1.0/servicePrincipals
Content-type: application/json
{
    "appId": "e34c45c4-0919-43e1-9436-448ad8e81552",
    "tags": [
        "WindowsAzureActiveDirectoryIntegratedApp"
    ]
}

Utilisation de PowerShell :

PS> connect-MgGraph -Scopes "Application.ReadWrite.All"
PS> New-MgServicePrincipal -AppId e34c45c4-0919-43e1-9436-448ad8e81552 -Tags WindowsAzureActiveDirectoryIntegratedApp
Colonnes (contenu, images plein écran)

Ensuite, vous devez toujours donner le consentement administrateur si vous souhaitez qu’un utilisateur non administrateur se connecte.

Voir également :

Vérifier les autorisations

Notez que l’application Franklin Registration Service (e34c45c4-0919-43e1-9436-448ad8e81552) est uniquement nécessaire lors de l’enregistrement pour vérifier que l’utilisateur dispose d’un accès en lecture à sharepoint. Il dispose des autorisations déléguées suivantes :

  • Openid
    Permet aux utilisateurs de se connecter à l’application avec leur compte professionnel ou scolaire et permet à l’application d’afficher le profil utilisateur de base informations.
  • Profile
    Permet à l’application d’afficher le profil de base de vos utilisateurs (par exemple, nom, image, nom d’utilisateur, adresse électronique)
  • Files.ReadWrite.All
    Permet à l'application de lire, créer, mettre à jour et supprimer tous les fichiers auxquels l'utilisateur connecté peut accéder.

Utilisateur connecté au portail d’enregistrement

Une fois cette étape initiale terminée, l’utilisateur est connecté au portail d’enregistrement

Connecter l’utilisateur technique

Avec l’autorisation correctement accordée, vous devriez être en mesure de vous connecter correctement à l’interface utilisateur de configuration du service Franklin :

Cliquez sur « Connecter un utilisateur » et vous devriez voir une nouvelle fenêtre de connexion, dans laquelle vous souhaitez vous connecter avec votre utilisateur technique. C'est pourquoi le Franklin Service demande des autorisations supplémentaires pour accéder à SharePoint :

Comme ci-dessus, et l’administrateur doit consentir aux autorisations :



Après le processus de connexion, l’interface utilisateur doit afficher les informations sur l’utilisateur connecté :

Une fois l’utilisateur enregistré, vous devriez être en mesure de prévisualiser une page.

Important

La modification du mot de passe de l’utilisateur invalidera l’octroi établi lors de la connexion de l’utilisateur. Cela finit par provoquer une erreur dans le sidekick. Pour éviter cela, vous devez reconnecter l’utilisateur en cliquant sur le bouton de déconnexion, puis le reconnecter.

recommendation-more-help
10a6ce9d-c5c5-48d9-8ce1-9797d2f0f3ec