Authentification des connecteurs de données OneDrive et SharePointIntroduction
Le module complémentaire Connecteurs de données OneDrive et SharePoint est désormais disponible pour JMP 19 EA6 et versions ultérieures. Cet article de blog vous explique comment vous connecter à votre compte Microsoft et accéder à vos données grâce à ces nouveaux connecteurs.
Si vous ne l'avez pas encore fait, visitez la Marketplace JMP pour trouver le module complémentaire ou téléchargez-le ici . Les instructions d'installation et un bref aperçu sont disponibles sur la page de la Marketplace JMP. Une fois le module complémentaire installé, accédez à cette page pour vous connecter.
Dans ce guide, je vais vous montrer :
- Options d'authentification
- La configuration du serveur d'autorisation
- Conseils de dépannage
Les connecteurs de données OneDrive et SharePoint s’appuient sur un protocole d’authentification et d’autorisation appelé OAuth2 , qui vous permet d’utiliser votre compte Microsoft pour authentifier et accéder à vos données.
Une fois connecté à vos données, vous pouvez les importer et les interroger comme n'importe quel autre connecteur de données. Vous pourrez alors exploiter toutes les fonctionnalités de JMP pour vos données.
Options d'autorisation
Il existe deux options d'authentification avec les connecteurs de données :
- Serveur d'autorisation hébergé JMP
- Serveur d'autorisation personnalisé
Voir ci-dessous pour plus de détails sur la connexion avec ces options.
Ces options dépendent de l'inclusion des paramètres ID de locataire et ID client.
willmorgan_0-1740585689093.pngwillmorgan_0-1740585689093.png
Option 1 : serveur d'autorisation hébergé par JMP
Cette option sera utilisée automatiquement si vous n'incluez pas l'ID de locataire et l'ID de client dans l'éditeur de connecteur. Lors de la connexion, JMP ouvre le navigateur par défaut et vous invite à vous connecter au compte Microsoft souhaité. Vous êtes ensuite invité à accorder l'accès à l'application SharePoint Data Connector.
Si vous n'avez pas accès à Azure, par exemple avec un compte Microsoft personnel, cette option sera la seule disponible. En cas de problème d'autorisations, contactez votre service informatique pour obtenir l'accès à l'application.
Option 2 : Configuration du serveur d'autorisation
Remarque : Pour créer votre propre application d'autorisation Azure, vous devez disposer d'un accès à Microsoft Azure avec les autorisations nécessaires. Si vous n'avez pas accès à Azure, contactez votre service informatique pour qu'il crée l'application ou vous accorde l'accès. Cette procédure n'est à effectuer qu'une seule fois par entreprise (locataire). Si un membre de votre équipe l'a déjà effectuée, vous pourrez obtenir les identifiants nécessaires via l'application existante.
Si vous avez tenté d'utiliser l'option 1 mais que vous rencontrez des difficultés pour obtenir les autorisations d'accès requises, vous pouvez configurer votre propre application Azure pour accorder l'accès au connecteur. Cette option inclut des détails techniques concernant la norme OAuth2 ; je vous recommande donc de vous renseigner ici avant de poursuivre.
Pour des informations plus détaillées sur l’enregistrement des applications Azure, consultez la documentation Microsoft ici.
Veuillez vous assurer qu'après avoir lu ces documents, vous les comprenez avant de continuer.
Maintenant que vous vous êtes familiarisé avec OAuth2 et le processus d’enregistrement des applications Microsoft Azure, voici les étapes importantes pour vous connecter à vos données OneDrive ou SharePoint.
Après avoir enregistré votre application, ajoutez-lui un URI de redirection pour que le connecteur fonctionne correctement. Vous devez ajouter l'URI « http://localhost » à la liste des applications mobiles et de bureau. Consultez la section « Configurer les paramètres de la plateforme » de la documentation Microsoft pour plus d'informations.
Ajoutez ensuite des autorisations API supplémentaires à votre application. Pour cela, accédez à Gérer > Autorisations API dans le portail de l'application. Cliquez sur Ajouter une autorisation , puis recherchez et ajoutez les autorisations API suivantes :
- Fichiers.Lecture/Écriture
- Sites.Lire.Tout
- Sites.Sélectionnés
- Utilisateur.Lire
Ce faisant, il ajoute les autorisations API nécessaires pour que votre application puisse accorder l’accès à vos fichiers OneDrive et SharePoint.
Test de connexion
Pour vous assurer que votre connexion est correcte, sélectionnez le bouton Tester dans l'éditeur de connecteurs de données. Après avoir ouvert le navigateur et demandé vos identifiants de compte Microsoft, un appel API rudimentaire est exécuté sur OneDrive ou SharePoint pour vérifier la bonne connexion.
Conseils de dépannage
La fédération Microsoft peut être très stricte en matière d'accès. Vous pourriez donc rencontrer des difficultés pour accéder à votre compte via le connecteur si vous utilisez l'option 1. Le serveur d'autorisation étant hébergé par JMP, les locataires externes doivent obtenir l'autorisation explicite de leur service informatique pour accéder à l'application. Dans ce cas, demandez l'autorisation à votre service informatique pour autoriser l'accès au connecteur ou passez à l'option 2 pour créer votre propre serveur d'autorisation.
Remarque concernant l'interaction avec le navigateur pour la connexion : un délai d'expiration de 150 secondes est appliqué afin d'éviter que JMP ne se bloque indéfiniment si le navigateur est fermé avant la fin de la séquence d'authentification. Si vous fermez accidentellement le navigateur, vous pouvez attendre 150 secondes que le délai expire ou fermer et rouvrir JMP pour tenter de vous reconnecter.
Cet article de blog est destiné à vous aider à comprendre et à dépanner le processus d’authentification des connecteurs de données OneDrive et SharePoint.
Accès aux donnéesObjet : Authentification des connecteurs de données OneDrive et SharePointWaouh ! J'attendais ça depuis tellement longtemps !
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour,
J'ai essayé l'option 2, mais si Sites.Read.All est présent, alors Sites.Selected ne restreint pas l'accès aux autres sites.
J'ai créé l'application et ajouté les autorisations décrites dans l'article. J'ai restreint son accès via PowerShell. OneDrive et d'autres URL semblent accessibles.
Si je supprime Sites.Read.All des autorisations, une demande de consentement s'affiche.
Existe-t-il un moyen de supprimer Sitese.Read.All sans avoir à gérer le consentement ?
Re: Authentification des connecteurs de données OneDrive et SharePoint@ordinateur Merci pour votre commentaire ! Si vous souhaitez limiter le niveau d'accès du connecteur de données SharePoint, vous devez utiliser uniquement l'autorisation API Sites.Selected. Il n'est actuellement pas possible de contourner le consentement requis pour Sites.Selected seule, car cela nécessite l'accord et l'approbation de l'administrateur pour les collections de sites sélectionnées. J'ai inclus Sites.Read.All afin que le connecteur puisse accéder à tous les sites auxquels l'utilisateur a accès. Vous trouverez plus d'informations sur les autorisations de l'API des sites SharePoint ici . J'espère que cela vous sera utile.
Meilleur,
Volonté
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour Will,
Merci d'avoir répondu.
Habituellement, lors de la création de ces applications, j'utilise une clé secrète ou un certificat d'application pour l'authentification. Les détails ci-dessus ne sont pas mentionnés.
Après avoir saisi l'identifiant du locataire et l'identifiant de l'application et établi la connexion, une demande d'autorisation d'administrateur s'affiche systématiquement. Par curiosité, je l'ai approuvée pour voir ce qui se passerait. L'autorisation Sites.Read.All ainsi que les autres autorisations mises en évidence ont été ajoutées.
computerhabit_0-1761918181174.pngcomputerhabit_0-1761918181174.png
Il se peut que j'aie mal compris une instruction concernant la création de l'application. Pourriez-vous me conseiller ? Je souhaite absolument limiter l'accès à cette application en utilisant le scénario 2.
Cordialement
Re: Authentification des connecteurs de données OneDrive et SharePoint@ordinateur Il est fort probable que votre application demande des autorisations API de niveau « Application » alors qu'il vous faut des autorisations API « Déléguées ». Essayez de modifier la propriété Sites.Selected en « Déléguées », puis réessayez. Si l'autorisation API est bien « Déléguée » et approuvée, cela devrait suffire. Tenez-moi au courant si cela fonctionne afin que je puisse vous aider davantage.
Meilleur,
Volonté
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour,
J'ai essayé les paramètres suivants, et le système demande toujours le consentement de l'administrateur.
computerhabit_0-1761924504575.pngcomputerhabit_0-1761924504575.png
Cordialement
Re: Authentification des connecteurs de données OneDrive et SharePoint@ordinateur Vous devez probablement ajouter des autorisations à votre application pour accéder aux collections de sites souhaitées. Consultez cet article pour savoir comment ajouter ces autorisations dans PowerShell. N'hésitez pas à me dire si cela vous aide.
Meilleur,
Volonté
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour Will,
Merci de votre soutien continu. Voici un exemple d'application sur le site.
computerhabit_0-1761927202345.pngcomputerhabit_0-1761927202345.png
Je n'ai accordé que l'autorisation de lecture, mais cela me semblait approprié. Comme vous pouvez le constater ci-dessous, l'autorisation existe.
computerhabit_1-1761927345833.pngcomputerhabit_1-1761927345833.png
Cordialement
Re: Authentification des connecteurs de données OneDrive et SharePoint@ordinateur Merci pour ces informations. Est-ce qu'une demande d'autorisation s'affiche sur la page de connexion lorsque vous essayez de vous connecter au site via le connecteur de données ? Si oui, pourriez-vous me faire parvenir une capture d'écran de cette page ? Merci.
Re: Authentification des connecteurs de données OneDrive et SharePointJe me permets de suggérer un court atelier sur ce sujet. Ou peut-être quelques réunions individuelles par Zoom pour nous guider en petit groupe ? Je travaille dans une entreprise de défense où les restrictions d'accès aux données sont très strictes, et la moitié du temps, les notifications et alertes me sont propres. J'aimerais beaucoup participer à un groupe de travail sur ce sujet, car une grande partie de mes métadonnées provient de fichiers Excel et d'autres tables stockées sur SharePoint.
Re: Authentification des connecteurs de données OneDrive et SharePointUn atelier ou une démonstration sur la prise en main des connecteurs SharePoint serait une excellente idée. J'aimerais beaucoup tester cette nouvelle fonctionnalité.
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour @chris_dennis . Excellente idée ! @Jordan_Hiller et @Jed_Campbell ont eu la même idée et prévoyaient d'aborder ce sujet lors de ce webinaire. Nous envisagerons d'étoffer les sessions si nécessaire. https://community.jmp.com/t5/Learn-JMP-Events/Accessing-Querying-and-Importing-Data-from-Databases/ec-p/919219
Re: Authentification des connecteurs de données OneDrive et SharePoint10 avril – et même plus tôt, ce serait formidable !
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour @willmorgan , merci pour l'article et l'application. J'ai discuté de l'utilisation de l'application et des autorisations nécessaires avec mon service informatique, mais ils sont un peu réticents car cela requiert l'accès aux fichiers des utilisateurs, la lecture et la gestion des droits d'accès aux éléments de toutes les collections du site…
En matière de sécurité des données, savez-vous si l'application est sûre ? Existe-t-il des documents ou des liens supplémentaires que je pourrais transmettre à mon service informatique pour les informer des risques éventuels ou de la sécurité de la connexion ? Ou bien est-il possible de limiter l'accès à un dossier spécifique dans un SharePoint particulier ?
Merci encore!
Re: Authentification des connecteurs de données OneDrive et SharePointBonjour @Thibarely , merci pour votre commentaire ! Je serais ravi de vous fournir davantage d'explications concernant la sécurité du connecteur de données SharePoint. Le code Python qui alimente ce connecteur dans JMP s'exécute entièrement en local sur votre système ; JMP n'a donc aucun accès aux données SharePoint de votre entreprise.
L'application d'autorisation que nous hébergeons vous permet de vous connecter avec votre compte Microsoft. Elle vérifie votre identité (authentification) au sein de votre propre environnement (et non celui de JMP) et vous accorde l'accès aux autorisations API requises (autorisation). Ce jeton est ensuite utilisé sur votre machine locale pour effectuer des requêtes auprès des serveurs SharePoint de votre entreprise et vous donne accès aux sites SharePoint, à OneDrive, etc. Vous n'aurez accès qu'aux données auxquelles votre compte Microsoft a déjà accès.
Concernant la limitation de l'accès à un dossier spécifique, le connecteur aura accès à toutes les données auxquelles vous accédez. Il n'est donc actuellement pas possible d'empêcher le connecteur d'accéder aux données auxquelles vous avez accès. Vous pouvez toutefois utiliser le paramètre de dossier pour empêcher le connecteur de lire des bibliothèques SharePoint entières, si vous le souhaitez.
Voir le diagramme suivant pour OAuth2 :
willmorgan_0-1788196856428.png
Dans ce cas précis, l'application d'autorisation de JMP fait office de serveur OAuth. Comme vous pouvez le constater, elle n'effectue aucune requête ni ne tente d'accéder au serveur de ressources, qui est votre site SharePoint.
Vous pouvez également consulter cette page pour plus d'informations. J'espère que cela vous sera utile. N'hésitez pas à me recontacter si vous avez besoin de précisions supplémentaires.
Cordialement, Will.