Utilisation de méthodologies de développement basées sur des normes

L’utilisation correcte des normes du secteur pour le développement de logiciels, augmentée par la bibliothèque d’authentification Microsoft (MSAL), garantit que vos applications cloud répondent aux exigences Confiance nulle pour une sécurité optimale. Dans cet article, nous fournissons une vue d’ensemble des normes prises en charge (OAuth 2.0, OpenID Connect, SAML, WS-Federation et SCIM) et les avantages de leur utilisation avec MSAL et le Plateforme d'identités Microsoft, ainsi que des liens vers des articles plus détaillés.

Qu’en est-il des protocoles ?

Les protocoles d’implémentation doivent être laissés à des personnes et des organisations très spécifiques qui sont prêtes à assumer les coûts impliqués : le temps nécessaire pour écrire un premier passage qui est entièrement à jour avec toutes les meilleures pratiques (suivant les nombreuses pages du guide des bonnes pratiques OAuth 2.0 pour développer une implémentation sécurisée pour implémenter correctement le protocole). Au lieu de cela, nous vous recommandons vivement d’utiliser une bibliothèque bien gérée avec une préférence pour MSAL lorsque vous créez directement une identité Azure AD ou Microsoft.

Nos MSAL sont optimisés pour générer et utiliser Azure AD. Si vous êtes dans un environnement où vous n’avez pas implémenté MSAL ou qui a des fonctionnalités très spécifiques qui sont déverrouillées par sa propre bibliothèque, le moyen le plus simple et le plus efficace de développer votre application à l’aide du Plateforme d'identités Microsoft consiste à créer des fonctionnalités OAuth 2.0 et OpenID Connect. Le troisième choix consiste à revenir à un protocole, mais sachez que les coûts que vous prenez pour le faire correctement.

Poursuivez la lecture de cet article pour obtenir une vue d’ensemble des standards pris en charge et des avantages MSAL (avec des liens vers des articles plus détaillés) afin de pouvoir apprendre à les utiliser dans le développement de vos applications Confiance nulle.

Comment les Plateforme d'identités Microsoft prennent en charge les normes

Lorsque vous développez vos applications avec les normes de l’industrie suivantes que les Plateforme d'identités Microsoft prennent en charge, vous disposez du moyen le plus efficace et le plus efficace d’atteindre Confiance nulle.

  • OAuth 2.0 et OpenID Connect
  • SAML

OAuth 2.0 et OpenID Connect

En tant que protocole d’autorisation, OAuth 2.0 permet à un utilisateur d’accorder un accès limité à ses ressources protégées. L’utilisation du protocole HTTP (Hypertexte Transfer Protocol), OAuth 2.0 sépare le rôle client du propriétaire de la ressource. Les clients utilisent des jetons pour accéder aux ressources protégées sur un serveur de ressources.

Les constructions OpenID Connect permettent aux extensions Azure AD d’améliorer la sécurité. Dans Azure AD, certaines des extensions les plus utilisées sont les suivantes.

  • Azure AD peut utiliser l’accès conditionnel (CA) pour rassembler les signaux, prendre des décisions d’accès et appliquer des stratégies organisationnelles. Ces stratégies garantissent qu’un utilisateur répond à des critères spécifiques pour accéder à une application. Les critères peuvent inclure l’exigence d’un appareil managé, l’accès à partir d’un emplacement spécifique, le blocage d’un emplacement spécifique et la configuration d’attributs tels que l’appartenance au groupe. L’accès conditionnel peut rediriger l’utilisateur vers le fournisseur d’identité pour l’authentification multifacteur ou répondre aux exigences telles que les modifications de mot de passe.
  • Le contexte d’authentification d’accès conditionnel permet aux applications d’appliquer des stratégies granulaires pour protéger les données sensibles et les actions au lieu d’être juste au niveau de l’application.
  • L’évaluation continue de l’accès (CAE) permet aux applications Azure AD de s’abonner aux événements critiques qui peuvent ensuite être évalués et appliqués. Cela inclut l’évaluation des événements tels que les comptes d’utilisateur désactivés ou supprimés, les modifications de mot de passe, les révocations de jetons et les utilisateurs détectés comme étant risqués.

Vos applications qui utilisent des fonctionnalités de sécurité améliorées, telles que l’autorité de certification et le contexte d’authentification d’accès conditionnel, doivent inclure du code pour gérer les défis liés aux revendications. Les protocoles ouverts vous permettent d’utiliser des défis de revendications et des demandes de revendications pour appeler des fonctionnalités client supplémentaires, telles que l’indication aux applications dont ils ont besoin pour re-interagir avec Azure AD (par exemple, en cas d’anomalie ou si l’utilisateur ne répond plus aux conditions dans lesquelles ils ont été authentifiés précédemment). Vous pouvez coder ces extensions sans perturber les flux de code d’authentification primaire.

Langage de balisage d’assertions de sécurité (SAML)

Le Plateforme d'identités Microsoft utilise SAML 2.0 pour permettre à vos applications Confiance nulle de fournir une expérience d’authentification unique à vos utilisateurs. L’authentification Sign-Out unique et les profils SAML uniques dans Azure Active Directory (Azure AD) expliquent comment le service fournisseur d’identité utilise des assertions, des protocoles et des liaisons SAML. Le protocole SAML nécessite le fournisseur d’identité (Plateforme d'identités Microsoft) et le fournisseur de services (votre application) pour échanger des informations sur eux-mêmes. Lorsque vous inscrivez votre application de confiance zéro auprès d’Azure AD, vous inscrivez des informations liées à la fédération qui incluent l’URI de redirection et l’URI de métadonnées de l’application avec Azure AD.

Avantages de MSAL sur les protocoles

Microsoft optimise les MSAL pour le Plateforme d'identités Microsoft et offre la meilleure expérience pour l’authentification unique, la mise en cache des jetons et la résilience des pannes. Une variété de MSAL sont généralement disponibles et la couverture de nos langages et infrastructures continue de s’étendre.

À l’aide de MSAL, vous pouvez acquérir des jetons pour les types d’applications qui incluent des applications web, des API web, des applications monopage, des applications mobiles et natives, des démons et des applications côté serveur. MSAL permet une intégration rapide et simple avec un accès sécurisé aux utilisateurs et aux données simples via Microsoft Graph, d’autres API et vos propres API. Avec des libs d’authentification de classe optimale, vous pouvez atteindre n’importe quel public et suivre le cycle de vie du développement de la sécurité Microsoft.

Étapes suivantes