Bien démarrer
Module Drupal
Connectez Drupal à DocID®, provisionnez des utilisateurs natifs, associez les attributs vérifiés aux rôles et protégez le contenu.
Le module DocID® officiel connecte Drupal à l’un des plus grands réseaux en ligne de professionnels de santé. Il utilise les utilisateurs, rôles, autorisations, sessions, nœuds, médias et blocs natifs de Drupal afin de rendre le contenu professionnel accessible à un large public avec les flux Drupal habituels.
Ouvrir le module DocID® sur Drupal.org
Prérequis
- Un site Drupal utilisant HTTPS et l’autorisation d’installer et de configurer des modules
- Un compte DocID® avec un asset de site configuré et des identifiants OAuth
- Les modules Drupal core File, Filter, Node, Options et User ; Media est facultatif pour les médias protégés
Installer le module
Depuis l’interface d’administration
Téléchargez le paquet actuel depuis le projet DocID® sur Drupal.org. Dans l’administration Drupal, ouvrez Extension → Ajouter un nouveau module, téléversez l’archive et terminez l’installation.
Avec Composer
Exécutez la commande suivante depuis la racine du projet Drupal :
Activer le module
Activez DocID® sous Extension dans l’administration Drupal. Vous pouvez aussi l’activer avec Drush puis reconstruire les caches :
Configurer OAuth et les données client demandées
- Ouvrez Configuration → Personnes → DocID® → Identifiants OAuth.
- Copiez l’URL de rappel affichée dans les URI de redirection autorisés de l’asset correspondant dans le tableau de bord professionnel DocID®.
- Saisissez le Client ID et le Client Secret de l’asset.
- Sous Données client demandées, conservez openid et professional et n’activez que les données facultatives profile, email ou phone nécessaires au site.
Scopes disponibles
| Scope | Statut | Claims |
|---|---|---|
| openid | Obligatoire | sub |
| professional | Obligatoire | profession_id, discipline_id, profession_verified |
| profile | Facultatif | name, title, given_name, family_name, gender |
| Facultatif | ||
| phone | Facultatif | phone_number |
Utilisateurs natifs et correspondance des rôles
Une connexion DocID® réussie provisionne ou actualise un utilisateur Drupal natif lié au moyen du claim sub stable. Les comptes ne sont pas liés par e-mail. Les correspondances peuvent viser tous les utilisateurs DocID® ou des identifiants exacts de profession, discipline, institution ou sujet. Tous les rôles non administratifs correspondants sont combinés ; les rôles attribués indépendamment dans Drupal restent inchangés.
Protéger le contenu et les médias
Les éditeurs peuvent choisir Public, Uniquement les utilisateurs DocID® ou Uniquement les rôles sélectionnés dans les paramètres d’accès DocID® des contenus compatibles. Les règles par rôle utilisent l’accès aux nœuds Drupal. Les médias locaux protégés doivent utiliser le système de fichiers privé de Drupal afin que leur diffusion reste soumise à l’autorisation Drupal.
Destinations de connexion
Configurez des destinations internes à Drupal par profession ou discipline sous Destinations de connexion. Le numéro de priorité le plus bas l’emporte. Une page protégée demandée avant l’authentification reste prioritaire sur une destination basée sur le profil.
Smart tags disponibles
Le module fournit les blocs DocID® Account Navigation, connexion DocID® et compte DocID. Pour utiliser les balises intelligentes dans le contenu éditorial, activez le filtre DocID smart tags pour le format de texte de confiance concerné.
Authentification et navigation
Le lien de connexion s’adapte à l’état : il affiche la connexion aux visiteurs et la déconnexion aux utilisateurs DocID® authentifiés. Les attributs login_text et logout_text permettent de personnaliser les deux libellés. Le nom d’utilisateur utilise la meilleure valeur disponible dans cet ordre : titre, prénom et nom ; titre et nom ; adresse e-mail autorisée ; identifiant utilisateur DocID® stable.
| Shortcode | Description |
|---|---|
| [docid-loggedin-content]Content[/docid-loggedin-content] | Affiche le contenu inclus uniquement aux utilisateurs DocID® authentifiés. |
| [docid-loggedout-content]Content[/docid-loggedout-content] | Affiche le contenu inclus uniquement aux visiteurs sans session DocID® authentifiée. |
| [docid-login-link] | Affiche Se connecter aux visiteurs et Se déconnecter aux utilisateurs DocID® authentifiés. |
| [docid-login-link login_text="Access" logout_text="Leave"] | Utilise des libellés en texte clair personnalisés pour les deux états d’authentification. |
| [docid-username] | Affiche le meilleur nom d’utilisateur disponible : titre, prénom et nom ; puis titre et nom ; puis adresse e-mail autorisée ; enfin identifiant utilisateur DocID® stable. |
Données de profil
| Smart tag | Scope | Description |
|---|---|---|
| [docid-profile-id] | openid (requis) | L’identifiant stable et unique du compte DocID®. |
| [docid-profile-name] | profile (facultatif ; autorisation requise) | Le titre, le prénom et le nom combinés. |
| [docid-profile-title] | profile (facultatif ; autorisation requise) | Le titre ou la civilité. |
| [docid-profile-given-name] | profile (facultatif ; autorisation requise) | Le prénom. |
| [docid-profile-family-name] | profile (facultatif ; autorisation requise) | Le nom. |
| [docid-profile-gender] | profile (facultatif ; autorisation requise) |
Accéder à l’état d’authentification et aux claims en PHP
Dans le code applicatif, chargez l’identité liée à l’utilisateur Drupal actuel via le service IdentityRepository. Dans le code de production, injectez current_user et le repository dans votre classe plutôt que d’utiliser le conteneur de services statique.
Tester avant le lancement
- Ouvrez des contenus publics et protégés sans être connecté.
- Terminez la connexion avec un compte de test éligible et vérifiez le retour au contenu initialement demandé.
- Continuez sans les données de profil facultatives et confirmez que l’authentification fonctionne avec les scopes obligatoires.
- Testez chaque correspondance de rôle et chaque destination de connexion, y compris avec un compte sans correspondance.
- Déconnectez-vous et confirmez que le contenu protégé n’est plus accessible.
L’intégration fournit des fonctions techniques d’authentification et de contrôle d’accès. Les exploitants du site restent responsables du choix des scopes, autorisations, informations et bases juridiques adaptés à leur mise en œuvre.