Fermer

septembre 5, 2018

Comment configurer Auth Active Directory à partir d'iOS et d'Android


Apprenez à exploiter rapidement et facilement Azure Active Directory dans vos applications mobiles iOS et Android natives avec Kinvey et NativeScript.

La programmation de l'authentification et de l'autorisation d'une API Active Directory a connu de nombreux hauts n'a jamais été une histoire facile. Les développeurs d'applications .NET ont toujours été considérés comme des citoyens de première classe, tandis que les autres développeurs d'applications, notamment les développeurs iOS et Android, étaient quasiment à la traîne.

Les temps ont changé et Microsoft prend en charge d'autres plateformes. En fait, depuis la montée en puissance du cloud avec Azure, Microsoft a adopté des approches Open Source et basées sur des standards pour de nombreuses technologies, y compris des méthodes d'authentification et d'autorisation.

Active Directory disponible dans Azure en tant qu'autonomie ou extension locale Dans de nombreux environnements, de nombreuses entreprises tirent parti de leurs capacités d'authentification unique dans leurs applications Web et mobiles. Dans cet article, je vous montrerai comment mettre en place rapidement et facilement Azure Active Directory dans des applications mobiles iOS et Android natives . Nous adopterons une approche basée sur la configuration du code et vous verrez comme c'est facile.

Il y a trois choses à configurer pour que l'authentification des utilisateurs dans les applications mobiles devienne un jeu d'enfant. article

Azure Active Directory

Nous allons commencer par configurer Azure. Vous avez probablement déjà configuré Active Directory et vous l’utilisez peut-être même dans Azure pour étendre sur Active Directory sur site. Ne vous inquiétez pas si vous ne le faites pas, je vais vous montrer comment faire cela en premier.

Applications mobiles

Ensuite, nous allons installer un exemple d'application mobile native pour iOS et Android en utilisant notre logiciel d'entreprise convivial. source, framework multiplateforme appelé NativeScript plus notre outil NativeScript Sidekick qui automatise de nombreux aspects de la création, de la création, de l'exécution et du déploiement d'applications NativeScript.

Kinvey Services

Nous collons l'authentification à l'aide de notre plate-forme entièrement gérée offrant une accélération des systèmes d'entreprise et des systèmes hérités à faible code, Kinvey (prononcé Kin-vey, comme carry). Grâce à Kinvey, les développeurs peuvent configurer, utiliser et exploiter un backend cloud pour leurs applications mobiles. Cela vous permet de ne pas vous soucier de la connexion à divers services de cloud, notamment Azure, la configuration et la maintenance des serveurs pour votre backend.

Azure Active Directory

Active Directory (ou AD en abrégé) n’a pas été laissé de côté dans votre centre de données local.

Azure AD Auth Flavors

Azure AD prend en charge plusieurs méthodes d'authentification, les plus utilisées dans l'entreprise étant OAuth, OpenId Connect et Redirection SAML. Dans cet article, je vais vous montrer comment configurer OAuth.

Configuration d'Azure AD for OAuth

La ​​configuration d'Azure AD est probablement la partie la plus difficile du processus. Quelques étapes sont nécessaires pour configurer Azure AD afin de pouvoir utiliser OAuth. Pendant que nous traversons ces étapes, veuillez créer une nouvelle note ou un document Word afin de pouvoir y copier et coller des valeurs pour une utilisation ultérieure. Nous aurons besoin de ces valeurs lors de la configuration de nos applications et services mobiles ultérieurement. Jetons un coup d'œil.

  1. Dans le portail Azure, cliquez sur Azure Active Directory ou cliquez sur + Nouveau et recherchez Azure Active Directory.

     Azure AD_01 "title =" Azure AD_01 "data-openoriginalimageonclick =" true " /> </a></p>
</li>
<li> Choisissez l'option Enregistrements d'applications et enregistrement de nouvelles applications.
<p><a href= Azure AD_02 "title =" Azure AD_02 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li> Entrez un nom pour l'application (cela peut être n'importe nom que vous préférez), choisissez Web app / API et, pour l'URL de connexion, entrez <a href= https://auth.kinvey.com .

     Azure AD_03 "title =" Azure AD_03 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li> Une fois créé, cliquez sur Paramètres, puis choisissez URL de réponse.
<p><a href= Azure AD_04" title = "Azure AD_04" data-openoriginalimageonclick = "true" /> </a></p>
</li>
<li> Entrez <a href= https://auth.kinvey.com/oauth2/redirect (voir les documents Kinvey pour plus de détails). Vous pouvez remplacer l'entrée existante par cette nouvelle URL.

     Azure AD_05 "title =" Azure AD_05 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li> De retour dans les paramètres de l'application, sélectionnez Autorisations requises, puis Windows Azure Active Directory.
<p><a href= Azure AD_06" title = "Azure AD_06 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li> Cliquez sur la première entrée de la liste et, une fois les autorisations affichées, activez les éléments suivants, puis enregistrez les autorisations.<br />
    </p>
<ol>
<li> Accédez au répertoire en tant qu'utilisateur connecté </li>
<li> Lisez tous les profils de base des utilisateurs </li>
<li> Connectez-vous et lisez le profil utilisateur </li>
</ol>
<p><a href= Azure AD_07 "title =" Azure AD_07 "data-openoriginalimageonclick =" true "/ > </a></li>
<li> De nouveau dans les paramètres de l'application, choisissez Clés et créez un nouveau paramètre sous Mots de passe: définissez la description (il peut s'agir du texte de votre choix), l'expiration (par exemple, «jamais») et une valeur. sera haché dès que vous cliquerez sur Enregistrer, et il sera complètement masqué une fois que vous aurez quitté cette lame. Assurez-vous donc de copier la valeur de la clé avant de la quitter et de la coller dans votre document Word.
<p><a href= Azure AD_08_1 "title =" Azure AD_08_1 "data-openoriginalimageonclick =" true "/> </a></p>
<p> Voici ce que vous verrez après avoir cliqué sur le bouton Enregistrer </p>
<p><a href= Azure AD_08_2" title = "Azure AD_08_2" data-openoriginalimageonclick = "true" /> </a></p>
<blockquote>
<p> Remarque: Pour OAuth et OpenID Connect, votre utilisateur admin logi n fonctionnera comme un test. Cependant, pour tester le processus de connexion avec la redirection SAML, Azure Active Directory aura besoin d'un utilisateur. Pour affecter un utilisateur à cette application d'entreprise, cliquez sur «Attribuer un utilisateur pour le test» dans la section de démarrage rapide ou sur «Utilisateurs et groupes» dans la sous-navigation de l'application d'entreprise. </p>
</blockquote>
</li>
</ol>
<h3><a id= Obtention des valeurs de configuration Azure pour le client

    Whew, c'était tout à fait paramétrable. Il ne nous reste plus qu'à enregistrer certains de nos paramètres Azure AD pour les utiliser côté client. Revenez au niveau supérieur de la lame Azure Active Directory du portail.

    1.     

    Sélectionnez Enregistrements d'applications, puis sélectionnez Toutes les applications dans la liste déroulante. Vous devriez voir l’application que nous avons enregistrée (EnterpriseApp1) dans la liste des applications. Copiez la valeur GUID de l'ID de l'application et enregistrez-la dans votre document Word. Vous pouvez appeler cette valeur «ClientID».

     Azure AD_09 "data-displaymode =" Original "title =" Azure AD_09 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li>
    </p>
<p> Cliquez sur Points de terminaison et copiez le point de terminaison de jeton OAuth 2.0 et le point de terminaison d'autorisation OAuth 2.0. Collez le jeton OAuth 2.0 dans votre document Word et appelez-le «URI du fournisseur», puis collez le noeud final d'autorisation OAuth 2.0 dans votre document Word et appelez-le «Grant Endpoint». </p>
<p><a href= Azure AD_10 "data-displaymode = Titre original = "Azure AD_10" data-openoriginalimageonclick = "true" /> </a></p>
</li>
</ol>
<p> Continuons ensuite avec la configuration de l'application mobile. </p>
<h2><a id= Mobile Setup

    Il existe deux méthodes d'authentification avec Azure AD à partir de vos applications iOS et Android: Nous envisagerons au lieu d'écrire votre propre code Objective C, Swift, Java ou Kotlin personnalisé pour communiquer avec Azure AD (ou rouler le vôtre). Va plus loin pour aplanir les différences entre iOS et Android, et vous offre un moyen simple et simple de configurer l'authentification à l'aide de l'approche de configuration par code.

    Approach 1: ADAL

    Azure AD fournit l'authentification Active Directory bibliothèque ionique, ou ADAL, pour les clients iOS et Android devant accéder à des ressources protégées.
    Vous pouvez consulter les guides de démarrage rapide pour chacune de ces URL:

     https://docs.microsoft.com/en-us / azure / répertoire-actif / develop / quickstart-v1-ios
    
    https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-v1-android
    

    Si vous pensez que l’utilisation des bibliothèques ADAL pour vos applications iOS et Android est un défi en soi, vous n'êtes pas seul. Même après avoir extrait tous les détails de la communication HTTP dans les bibliothèques ADAL, la tâche de les implémenter sur chaque plate-forme mobile nécessite plusieurs équipes possédant des connaissances spécifiques sur la plate-forme. C'est pourquoi nous allons utiliser Kinvey pour simplifier cela.

    Approche 2: SDK Kinvey NativeScript

    L'utilisation de NativeScript avec notre SDK Kinvey est de loin l'approche la plus simple pour ajouter une authentification à une application mobile native. Faites-le pour iOS et Android en même temps. Je vais vous montrer comment démarrer une toute nouvelle application NativeScript en utilisant un outil appelé NativeScript Sidekick, disponible en téléchargement gratuit .

    NativeScript Sidekick vous permet de vous connecter à des fournisseurs d'authentification d'entreprise via OAuth 2.0. Examinons les différents points de données dont NativeScript Sidekick a besoin pour établir la connexion.

    Remarque: Il est supposé que vous disposez déjà d’un environnement iOS ou Android fonctionnel configuré sur votre ordinateur. Si vous êtes sur Mac, vous pourrez alors créer pour iOS, mais si vous êtes sous Windows ou Linux, vous pouvez créer pour Android localement et utiliser Sidekick pour iOS dans le cloud.

    iOS

    1. Démarrez NativeScript Sidekick et cliquez sur le bouton plus ou sur le bouton Créer une application. Vous verrez l'écran Créer une application où vous pouvez choisir parmi un projet JavaScript simple, TypeScript ou Angular. Ensuite, vous pouvez sélectionner le modèle Enterprise Auth. Donnez un nom à votre application et spécifiez le dossier dans lequel vous souhaitez créer le projet. Une fois que vous avez pris du plaisir à choisir différentes options sur cet écran, cliquez sur Créer pour générer votre application.
          

     Sidekick_01 "data-displaymode =" Original "title =" Sidekick_01 "data-openoriginalimageonclick =" true "/> </a></p>
<p> À ce stade, vous avez une application native fonctionnelle que vous pouvez réellement utiliser sur un simulateur ou un vrai Si vous souhaitez vous connecter à l'aide de vos informations d'identification Azure AD, procédez comme suit: </p>
</li>
<li> Cliquez sur l'onglet Services et sélectionnez la méthode d'authentification que vous souhaitez utiliser. 2.<br />
    </p>
<p><a href= Sidekick_02 "data-displaymode =" Original "title =" Sidekick_02 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li> Voici votre document Word enregistré avec toutes les valeurs que vous avez collées depuis l'installation Azure fournie précédemment Pour OAuth 2, vous devez renseigner quelques valeurs afin de configurer votre service Kinvey pour qu'il fonctionne avec Azure AD.<br />
    </p>
<ol>
<li> Nom: vous pouvez utiliser n'importe quel nom pour le service. J'ai choisi EnterpriseApp1_OAuth_Service. </li>
<li> URI du fournisseur – il s'agit de la valeur provenant du point de terminaison de jeton OAuth 2.0 (doit également figurer dans votre document Word) </li>
<li> Grant Endpoint – il s'agit de la valeur du point de terminaison d'autorisation OAuth 2.0 (dans votre document Word) </li>
<li> ID client: il s'agit de l'ID d'application généré dans votre enregistrement d'application Azure AD </li>
<li> Client Secret: il s'agit de la première clé enregistrée dans la section précédente (je vous avais dit que Word doc serait utile) </li>
</ol>
<p><a href= Sidekick_03_1 " data-displaymode = "Original" title = "Sidekick_03_1" data-openoriginalimageonclick = "true" /> </a></p>
</li>
<li> Le reste des champs peut être laissé seul sauf un. Pour le champ Scope, entrez les éléments suivants (espaces compris):<br />
    </p>
<pre><code>     openid profile email </code></pre>
<p> Ne renseignez pas les champs User ID Attribute et User ID Endpoint et laissez le paramètre Include client et les commutateurs secrets définis sur «No». </p>
<p><a href= Sidekick_03_2 "data-displaymode =" Original "title = "Sidekick_03_2" data-openoriginalimageonclick = "true" /> </a></p>
</li>
<li> N'oubliez pas de sauvegarder votre configuration de service. Cliquez sur le bouton bleu Enregistrer et attendez quelques secondes pendant que le service est enregistré dans le cloud et que vos paramètres sont enregistrés. 19659075] Android </h4>
<p> Si vous avez suivi toutes les étapes jusqu'à présent, votre application Android sera déjà configurée car NativeScript crée des applications natives multi-plateformes utilisant le même code JavaScript, et le kit de développement KinScript NativeScript gère automatiquement les flux d'authentification et d'autorisation pour les deux plates-formes en arrière-plan. </p>
<ul>
<li> Il ne nous reste plus qu'à lancer l'application sur un périphérique ou un simulateur et à nous connecter à l'aide de nos identifiants Azure. Informations sur <a href= lors du lancement de votre application à partir de Sidekick .

  2. Une fois que Sidekick a déployé votre nouvelle application sur votre appareil, vous devriez voir une application

     Sidekick_06_1 = "Original" title = "Sidekick_06_1" data-openoriginalimageonclick = "true" /> </a> </p>
<p> Lorsque vous appuyez sur le bouton Connexion, si tout s'est bien passé, vous devez être invité à vous authentifier avec Azure Active Directory. Entrez le nom d'utilisateur et le mot de passe de votre compte Microsoft pour vous connecter. Comme il s'agit d'un écran Microsoft hébergé par Microsoft, il n'est pas nécessaire de s'inquiéter de vos informations d'identification ou de les stocker sur d'autres serveurs, ce que OAuth est conçu pour faire. </p>
<p> <a href=  sidekick_06_2 " data-displaymode = "Original" title = "sidekick_06_2" data-openoriginalimageonclick = "true" /> </a> </p>
<p> Vous pouvez en savoir plus sur le SDK Kinvey <a href= Kinvey ici .

    Kinvey Services [19659013] En coulisses, NativeScript Sidekick a créé pour vous un service Kinvey dans le cloud et enregistré une nouvelle application avec la configuration Azure AD que nous avons spécifiée, qui peut être modifiée à tout moment si vous deviez simplement vous connecter à votre Kinvey. console.
    1.     

      Accédez à https://console.kinvey.com/ et connectez-vous à votre compte Telerik que vous avez utilisé pour Sidekick. Vous verrez une liste de vos applications enregistrées ici.
          

       Kinvey_01 "data-displaymode =" Original "title =" Kinvey_01 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li>
    </p>
<p> Cliquez sur Catalogue de services pour afficher la liste des services enregistrés pour vous. Vous verrez notre EnterpriseApp1_OAuth_Service listé ici.<br />
    </p>
<p><a href= Kinvey_02 "data-displaymode =" Original "title =" Kinvey_02 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
<li>
    </p>
<p> Lorsque vous cliquez sur le service EnterpriseApp1_OAuth_Service, vous verrez tous les détails de la configuration Azure AD que nous avons renseignés avec Sidekick. Vous pouvez modifier ces champs ici si quelque chose change du côté Azure et que vous devez resynchroniser votre configuration.<br />
    </p>
<p><a href= Kinvey_03 "data-displaymode =" Original "title =" Kinvey_03 "data-openoriginalimageonclick =" true "/> </a></p>
</li>
</ol>
<p> Vous devez vous retrouver dans une situation où vous avez besoin d'un autre type de configuration de service d'authentification non mentionnée dans cet article Vous pouvez simplement configurer une nouvelle instance de service dans votre console Kinvey à l’aide de l’une des options ci-dessous: Dans la console, choisissez l’option Mobile Identity Connect dans la navigation de gauche, puis cliquez sur le bouton Ajouter un service d’authentification. là vous verrez l'option OAuth discutée dans cet article ainsi que beaucoup d'autres. </p>
<p> <a href=  Kinvey_04 "data-displaymode =" Original "title =" Kinvey_04 "data-openoriginalimageonclick =" true "/> </a> </p>
<p> Au cours des six dernières années, des centaines de milliers de développeurs ont utilisé la plate-forme Backend as a Service <a href= de Kinvey pour créer des applications riches et attrayantes utilisant leurs différentes fonctionnalités, notamment le stockage de données et de fichiers. authentification et autorisation, push n otifications, e-mail, fonctions personnalisées et déclencheurs, connectivité de données tierces, analyses, intelligence opérationnelle et conformité. Chaque service backend Kinvey est exposé aux développeurs frontaux via des kits de développement logiciel (SDK) afin qu'ils puissent écrire leurs applications sans avoir à penser aux protocoles d'API, mais simplement appeler des méthodes dans le langage de programmation de leur choix.

      Le dernier en date de cet ensemble est notre kit SDK NativeScript, qui offre non seulement les services d'authentification et d'autorisation d'entreprise décrits dans cet article, mais également les services de données. Vous pouvez lire ceci . Vers le haut

    Les étapes précédentes décrivent comment configurer une nouvelle application NativeScript et y ajouter le SDK Kinvey NativeScript. Cependant, vous pouvez aussi facilement étendre une application NativeScript existante ou toute application mobile native avec les services Kinvey Mobile Identity Connect.

    Prochaines étapes

    Inscrivez-vous au cours vidéo NativeScript Enterprise Auth à travers l'ensemble de l'installation, de Azure AD à Kinvey Services, en passant par vos applications iOS et Android.

    Autres ressources




Source link