-1

Mon but est de sécuriser mes méthodes d'API personnalisées et de les utiliser via httpclient (C#).Comment ajouter une authentification simple aux applications Web/mobile Azur avec Azure Active Directory?

Dans le cadre des tests, j'ai utilisé Postman pour demander un jeton et l'utiliser pour accéder à la ressource.

+0

Veuillez noter que même les questions auxquelles vous avez répondu doivent répondre aux exigences de qualité du site; voir [demander]. * "Comment" * questions ne sont pas un bon pour SO, envisager d'écrire ceci sur un blog ou quelque chose. – jonrsharpe

+0

Merci pour la suggestion. Je vais en prendre note. –

Répondre

2

Je vais expliquer avec le modèle de vanille qui vient lors de la création d'une nouvelle application mobile.

  1. Créer une nouvelle application mobile.

  2. Publiez-le sur Azure. Ouvrez-le sur le portail Azure, passez à Paramètres lame. Rechercher Authentification/Autorisation.

  3. Turn App service d'authentification sur Activé et sélectionnez Azure Active Directory> express> Créer une nouvelle application AD. Ouvrez le répertoire Active Directory (portail de gestion), sélectionnez le répertoire de votre compte.

  4. Sélectionnez Applications, celle que vous venez de créer. Accédez à l'onglet Configurer et copiez l'ID client , Créez une clé, copiez-la également.

  5. Cliquez sur Voir EndPoints en bas et copiez le jeton OAuth 2.0 EndpointOauth2.0 Token

  6. Ouvrez maintenant le projet d'application mobile et décorer le contrôleur/méthode que vous voulez projeter avec [Authorize ]

Vous devriez tous être configurés avec la configuration.

Ouvrez maintenant votre client préféré, dans mon cas Postman et

Étape 1: Demander un jeton

Method: POST 
URL : {Oauth TokenEndPoint from Step. 8} 
grant_type : client_credentials 
client_id : {one copied from AD section in Step. 7} 
client_secret : {one copied from AD section in Step. 7} 
resource : {one copied from AD section in Step. 7} 

Vous recevrez une réponse comme celui-ci

"token_type": "Bearer", 
    "expires_in": "3600", 
    "expires_on": "1453151213", 
    "not_before": "1453147313", 
    "resource": "yyyyyyyyyyyyyyyyyy", 
    "access_token": "xxxxxxxxxxxxxxxxxxx" 

copier Maintenant, le access_token et l'utiliser dans votre demande à l'application mobile.

Method: Get 
    URL : https://MyMobileApp.azurewebsites.net/api/values?ZUMO-API-VERSION=2.0.0 
    Headers : Authorization : Bearer xxxxxxxxxxxxxxxxxxx 

Si vous rencontrez des problèmes, voici une étape clé. Allez sur le portail Azure et Activer la journalisation des applications, Messages d'erreur détaillés, Suivi des demandes ayant échoué sous les journaux de diagnostic (lame Paramètres).

Maintenant, vous pouvez voir ce qui se passe et la consignation beaucoup plus détaillée sous Log Stream (lame Outils).