Exemple de code : plug-in WordPress

Mise à jour : 19 juin 2015

S’applique à : Azure

Le plug-in WordPress ACS permet aux hôtes WordPress d’utiliser ACS pour activer la connexion fédérée pour leurs sites WordPress.

Les administrateurs WordPress peuvent utiliser Microsoft Azure Active Directory Access Control (également appelée service Access Control ou ACS) pour créer des relations d’approbation entre leurs sites et fournisseurs d’identité tels que Windows Live ID, Facebook, Google, Yahoo!, et fournisseurs d’identité personnalisés tels que Microsoft Services ADFS 2.0. Le plug-in ACS WordPress affiche une page de connexion personnalisée basée sur la configuration ACS et permet aux utilisateurs finaux d’utiliser un fournisseur d’identification de leur choix pour se connecter au site WordPress.

Pour télécharger le plug-in WordPress, consultez http://wordpress.org/extend/plugins/acs-plugin-for-wordpress/

Fonctionnalités

  • S’authentifier auprès de WordPress à l’aide de Windows Live ID, Facebook, Google, Yahoo!, ou d’un fournisseur d’identité web personnalisé configuré dans ACS

  • Inscription simplifié pour les abonnés du site WordPress

  • Gestion du site WordPress à l'aide d'un compte fédéré

  • Les comptes fédérés sont similaires aux comptes d'utilisateur classiques et peuvent, éventuellement, recourir à l'authentification locale avec mot de passe

  • S’intègre à ACS à l’aide du protocole WS-Federation et des jetons web simples

Spécifications

  • Un compte Microsoft Azure sur la page d’accueil Azure.

  • Espace de noms Access Control. Pour plus d’informations, consultez Guide pratique pour créer un espace de noms Access Control.

  • Un hôte web exécutant PHP 5.0 ou une version ultérieure

  • Un hôte web exécutant WordPress 3.0 ou une version ultérieure

Configuration du plug-in WordPress ACS

Il existe trois parties de la configuration du plug-in WordPress ACS :

  • Configuration d’ACS pour le plug-in WordPress

  • Configuration des paramètres du plug-in WordPress

  • Activation du plug-in WordPress

Configuration d’ACS pour le plug-in WordPress

Vous pouvez utiliser le portail de gestion ACS pour configurer ACS.

Pour configurer ACS pour le plug-in WordPress

  1. Accédez au portail de gestion Microsoft Azure (https://manage.WindowsAzure.com), connectez-vous, puis cliquez sur Active Directory. (Conseil de résolution des problèmes : l’élément « Active Directory » est manquant ou non disponible)

  2. Pour créer un espace de noms Access Control, cliquez sur Nouveau, Services d'application, Access Control, puis cliquez sur Création rapide. (Ou cliquez sur Espaces de noms Access Control avant de cliquer sur Nouveau.)

  3. Pour gérer un espace de noms Access Control, sélectionnez l'espace de noms, puis cliquez sur Gérer. (Ou cliquez sur Espaces de noms Access Control, sélectionnez l'espace de noms, puis cliquez sur Gérer.)

    Cette action a pour effet d'ouvrir le portail de gestion ACS.

  4. Pour établir des relations avec les fournisseurs d'identité que vos utilisateurs pourront utiliser pour se connecter à votre site, cliquez sur Fournisseurs d'identité et sélectionnez un fournisseur d'identité pour votre site.

  5. Pour inscrire votre site WordPress auprès d’ACS, cliquez sur Applications de partie de confiance, sur Ajouter, entrez les informations suivantes dans le formulaire, puis cliquez sur Enregistrer.

    • Dans le champ Nom, entrez un nom d'affichage pour votre site.

    • Dans le champ Domaine, entrez l'URL de base de votre site web WordPress. Par exemple : http://127.0.0.1/wordpress/

    • Dans le champ URL de retour, entrez l'URL du fichier wp-login.php dans votre site WordPress. Par exemple : http://127.0.0.1/wordpress/wp-login.php

    • Dans le champ Format des jetons, sélectionnez SWT. Cela configure ACS pour envoyer un jeton web simple (SWT) au plug-in WordPress chaque fois qu’un utilisateur s’authentifie correctement.

    • Dans le champ Fournisseurs d'identité, sélectionnez les fournisseurs d'identité que votre site pourra prendre en charge.

    • Dans le champ Clé de signature des jetons, cliquez sur Générer pour créer une clé de signature des jetons. Copiez cette clé pour l'utiliser plus tard, lors de la configuration du plug-in.

    • Dans le champ Date d'expiration, entrez une date d'expiration appropriée pour la clé. À cette date, la clé ne sera plus valide.

    • Laissez les valeurs par défaut dans les autres champs.

  6. Ensuite, créez les règles qui déterminent les informations utilisateur envoyées par ACS à votre site. Dans cet exemple, nous envoyons toutes les revendications émises par les fournisseurs d'identité. Pour créer cette règle, cliquez sur Groupes de règles, puis sur Groupe de règles par défaut pour mon site WordPress et sélectionnez Générer. Vérifiez que vos fournisseurs d'identité sont sélectionnés et cliquez à nouveau sur Générer.

    Important

    Il est extrêmement important que le type de revendication d'entrée identifie uniquement l'utilisateur. Si vous n'êtes pas sûr du type de revendication à utiliser, contactez l'administrateur de votre fournisseur d'identité.

    Si vous utilisez un fournisseur d'identité personnalisé WS-Federation, tel qu'AD FS 2.0, assurez-vous qu'il existe une règle renvoyant une revendication nameidentifier à partir de ce fournisseur d'identité. Cette revendication envoie l'ID unique de l'utilisateur à l'application WordPress. Si la règle est absente, vous devrez créer une règle qui redirige la revendication d'ID unique renvoyée par le fournisseur d'identité vers le type de revendication nameidentifier.

Configuration des paramètres du plug-in WordPress

Pour configurer les paramètres du plug-in WordPress

  1. Télécharger le plug-in WordPress à partir du site WordPress à l’adresse http://wordpress.org/extend/plugins/acs-plugin-for-wordpress/

  2. Dans le dossier qui vient d'être téléchargé, ouvrez le fichier acs-wp-plugin-config-sample.php.

  3. Dans le champ ACS_NAMESPACE, entrez le nom de domaine complet de votre espace de noms Access Control, tel que mynamespace.accesscontrol.windows.net. Pour rechercher le nom de domaine, dans le portail ACS, cliquez sur Intégration de l’application. La valeur apparaît dans le champ Portail de gestion de la section Référence du point de terminaison.

  4. Pour la constante ACS_APPLICATION_REALM, entrez le domaine que vous avez entré lorsque vous avez inscrit votre site WordPress auprès d’ACS en tant qu’application de partie de confiance, par exemple. http://127.0.0.1/wordpress/

  5. Dans le champ ACS_TOKEN_SIGNING_KEY, entrez la clé de signature des jetons créée lors de l'enregistrement de votre site Wordpress en tant qu'application par partie de confiance. Gardez cette clé confidentielle, de la même manière qu'un mot de passe.

  6. Enregistrez le fichier sous acs-wp-plugin-config.php.

    Important

    Le fichier acs-wp-plugin-config.php contient des informations sensibles qui doivent être protégées des utilisateurs non autorisés. Nous vous conseillons de définir des autorisations appropriées pour ce fichier et de configurer votre serveur web pour refuser l'accès à ce fichier par navigateur. Pour les serveurs web Apache, copiez le code ci-dessous dans un fichier appelé .htaccess et placez-le dans le même répertoire que le fichier acs-wp-plugin-config.php.

    # protect acs-wp-plugin-config.php
    <files acs-wp-plugin-config.php>
    order allow,deny
    deny from all
    </files>
    

Activation du plug-in WordPress

Pour activer le plug-in WordPress

  1. Copiez le dossier acs-plugin-for-wordpress dans le dossier /wp-content/plugins/ de votre installation WordPress.

  2. Dans un navigateur web, accédez à votre site WordPress et connectez-vous en tant qu'administrateur.

  3. Dans la zone d'administration, cliquez sur Plug-ins. La page Du plug-in ACS pour WordPress s’affiche.

  4. Sous Plug-in ACS pour WordPress, cliquez sur Activer. Le plug-in WordPress ACS est désormais activé sur votre site.

Test du plug-in WordPress

Pour tester le plug-in WordPress

  1. Pour tester le plug-in, déconnectez-vous de votre site WordPress et sélectionnez Connexion sur la page principale du site.

    La page de connexion affiche un bouton pour chaque fournisseur d’identité que vous avez configuré dans ACS.

  2. Sélectionnez un fournisseur d'identité et connectez-vous.

  3. Une fois authentifié, il vous sera demandé de créer un nom d'utilisateur pour le site WordPress. Si vous vous êtes connecté à l’aide de Windows Live ID, vous êtes également invité à entrer une adresse de messagerie.

Un nouveau compte WordPress avec le rôle Abonné est créé et vous êtes redirigé vers la page de votre profil WordPress. Pour les visites suivantes, cliquez sur le fournisseur d’identité pour vous connecter. Vous ne serez pas invité à entrer un nom d’utilisateur ou une adresse e-mail.

Notes

Un compte d'administrateur peut promouvoir des comptes d'abonné fédérés vers le statut d'administrateur afin de pouvoir utiliser un compte fédéré pour gérer le site.

Notes

  • L’ID unique que Windows Live ID crée pour chaque utilisateur est spécifique à votre espace de noms Access Control. Si vous remplacez votre espace de noms Access Control par un espace de noms Access Control qui porte un autre nom, les utilisateurs qui se sont authentifiés avec un compte Live ID Windows ne peuvent pas se connecter à votre site. Dans le cas peu probable où vous devez modifier l’espace de noms Access Control, ces utilisateurs peuvent toujours utiliser la fonctionnalité de réinitialisation de mot de passe WordPress pour vous connecter à l’aide d’un mot de passe local.