Sign inGet Started

Configurer le SSO avec Microsoft Entra ID

Cette page couvre la partie Entra d'une connexion SSO. La partie Bird (vérifier un domaine, tester, activer et exiger le SSO) est la même pour tous les fournisseurs et se trouve sur SSO et provisionnement.

Entra et Bird ont chacun besoin de valeurs provenant de l'autre, donc le point de départ dépend du protocole. Gardez les deux ouverts pendant que vous travaillez.

SAML

Commencez dans Bird pour SAML. L'Entity ID et l'Assertion Consumer Service URL d'une connexion SAML dérivent de la connexion elle-même : créez-la avec I have not set up my provider yet, enregistrez les valeurs qu'elle affiche ensuite, puis revenez à Supply the details. Configurer SAML sans valeurs de substitution décrit ce processus.

Les noms de champs d'Entra ne correspondent pas à ceux de Bird :

Dans Bird, sous Register these with your identity providerDans Microsoft Entra ID
Assertion Consumer Service URLReply URL (Assertion Consumer Service URL)
Entity IDIdentifier (Entity ID)
Sign-in URL for this connectionSign on URL

Renseigner ou non Sign on URL détermine le comportement de la vignette My Apps. Si vous le renseignez, la vignette lance la connexion auprès de Bird, qui demande ensuite une assertion à Entra. Si vous le laissez vide, la vignette envoie une assertion à Bird sans y être invitée. Bird accepte les deux cas, à condition que la connexion autorise la connexion initiée par le fournisseur d'identité.

Définissez vous-même le format NameID

Les métadonnées de fédération d'Entra n'annoncent aucun format NameID. Bird lit le format à partir des métadonnées lorsqu'un fournisseur en publie un, donc une connexion Entra est indexée par défaut sur un identifiant permanent, et le premier test échoue parce que le format qu'Entra envoie réellement ne correspond pas.

Ouvrez Edit sur la connexion et définissez Identify members by sur l'adresse e-mail du membre avant de lancer le premier test. Dans Entra, définissez le claim Unique User Identifier (Name ID) sur user.mail, avec le format d'identifiant de nom défini sur Email address.

Okta et Google annoncent tous deux un format, donc cette étape est spécifique à Entra.

Désactivez Sign SAML response

Laissez Sign SAML response désactivé, pour qu'Entra signe l'assertion plutôt que la réponse qui l'entoure. Avec la signature de la réponse activée, l'assertion qu'elle contient n'est pas signée et Bird refuse chaque connexion avec une erreur de signature qui ressemble à un problème de certificat.

Validité de l'assertion et rotation des certificats

Entra signe des assertions valides de cinq minutes avant l'émission jusqu'à 60 minutes après, une fenêtre plus large que celle d'Okta ou de Google, que Bird accepte.

Effectuez la rotation avec un chevauchement. Ajoutez le nouveau certificat à la connexion Bird tant qu'elle contient encore l'ancien, activez le nouveau certificat dans Entra, puis supprimez l'ancien de Bird. Supprimer l'ancien certificat avant qu'Entra ait activé le nouveau refuse chaque connexion jusqu'à ce que les deux concordent.

Les secrets client et les certificats de signature d'Entra expirent. Notez les dates et planifiez le remplacement ; une connexion utilisant un identifiant expiré échoue le jour même.

OIDC

Commencez dans le portail Entra pour OIDC. Bird a besoin de l'émetteur, du client ID et du secret client pour créer une connexion OIDC : enregistrez donc d'abord l'application dans Entra. Le Redirect URI de Bird est le même pour chaque connexion et s'affiche dans Add connection avant toute création, vous pouvez donc l'enregistrer dès le départ.

Enregistrez une application dans Entra, ajoutez un secret client, et copiez le client ID et le secret dans Bird.

Utilisez votre émetteur spécifique au locataire, l'émetteur v2.0 qui nomme votre tenant id. N'utilisez pas le point de terminaison multi-locataire common : son document de découverte décrit l'émetteur comme un modèle plutôt qu'une valeur, et une connexion construite à partir de celui-ci échoue à chaque connexion. Bird s'authentifie auprès du point de terminaison de jeton avec client_secret_basic.

Enregistrez le Redirect URI de Bird comme URI de redirection sur l'inscription de l'application.

Renseignez l'attribut mail de chaque membre

Bird lit l'adresse du membre à partir du claim email du jeton d'identité. Entra émet ce claim uniquement lorsque l'attribut mail de l'utilisateur est défini, sous Contact information dans son profil Entra. Un locataire dont les utilisateurs n'ont pas de boîte aux lettres (une organisation utilisant un autre fournisseur de messagerie) le laisse souvent vide, et le test Bird signale alors qu'aucune adresse e-mail n'a été reçue, alors même que le nom principal de l'utilisateur est une adresse tout à fait valide.

Renseignez mail pour chaque membre qui se connectera via Bird.

La vignette My Apps

Pour que la vignette apparaisse, définissez le Home page URL de l'inscription de l'application sur l'Initiate login URI de la connexion depuis Bird, définissez Visible to users sur Yes, et affectez l'utilisateur. Sans URL de page d'accueil, la vignette est masquée.

L'affectation d'application ne restreint pas l'accès à Bird

Activer Assignment required sur l'application Entra n'empêche pas, à lui seul, un membre non affecté de se connecter à Bird via OIDC. Bird demande les scopes standard openid et email, qu'Entra traite comme des permissions Microsoft Graph : Entra évalue donc l'affectation par rapport à Graph plutôt que par rapport à votre application Bird.

Pour qu'Entra applique l'affectation, ainsi que l'accès conditionnel au niveau de l'application, exposez un scope sur l'inscription de l'application sous Expose an API, et demandez à Bird de le demander sur la connexion. En attendant, les membres qui peuvent accéder à votre organisation via cette connexion sont ceux dont l'adresse figure sur l'un de ses domaines vérifiés.

Cela s'applique au chemin OIDC. Une application SAML est sa propre ressource dans Entra, donc l'affectation est évaluée par rapport à celle-ci.

Étapes suivantes

Poursuivez avec la documentation, les guides et les exemples sur ce sujet.