---
locale: "fr"
updated_at: "2025-10-28T10:51:25.367Z"
canonical: "https://www.isdecisions.com/fr/userlock/docs/guides/sso/configurer-applications/microsoft/configuration-avec-powershell"
---

# Gérer le SSO pour Microsoft avec PowerShell

Configurer le SSO Microsoft à l’aide de scripts PowerShell.

> **Note**
>
> Si vous configurez le SSO pour Microsoft pour la première fois, référez-vous d’abord à la page [Configuration standard Microsoft](/userlock/docs/guides/sso/configure-the-applications/microsoft/configure).

## Vue d'ensemble

Les administrateurs peuvent **fédérer ou défédérer** manuellement des domaines Entra ID à l’aide des modules PowerShell Microsoft Entra.
Ils peuvent également gérer les utilisateurs pour créer ou synchroniser des comptes Entra ID avec leur Active Directory local.

Cette méthode est idéale pour l’**automatisation**, les **configurations à distance** ou les scénarios de dépannage lorsque **l’interface graphique n’est pas disponible**.

> **Note**
>
> Les opérations PowerShell modifient directement les paramètres de fédération d’Entra ID. **Vérifiez toujours toutes les valeurs avant de les appliquer.**

## Prérequis

- ✅ PowerShell 5.1 ou version ultérieure.
- ✅ Le module PowerShell **Microsoft.Graph** doit être installé.
- ✅ Des identifiants **Administrateur général** dans votre locataire Entra ID.
- ✅ Une connectivité réseau aux points de terminaison Entra ID.
- ✅ Un domaine vérifié dans Entra ID.

## Se connecter à l’API Graph

Avant d’exécuter une commande, connectez-vous à Microsoft Graph en utilisant les autorisations nécessaires.

1. Ouvrez un terminal PowerShell.
2. Connectez-vous à Microsoft Graph.
  ```powershell
  Connect-MgGraph -Scopes "Domain.ReadWrite.All User.ReadWrite.All Directory.ReadWrite.All Directory.AccessAsUser.All"
  ```
3. Lorsque cela vous est demandé, connectez-vous avec votre compte **Administrateur général Entra ID**.
  ![](https://a.storyblok.com/f/122374/565x558/49f7a96ad9/microsoft-sign-in.png)
4. Si vous gérez plusieurs locataires, récupérez et vérifiez le contexte actuel :
  ```powershell
  $context = Get-MgContext; $context
  ```
5. Connectez-vous spécifiquement à ce locataire :
  ```powershell
  Connect-MgGraph -NoWelcome -TenantId $context.TenantId -Scopes "Domain.ReadWrite.All User.ReadWrite.All Directory.ReadWrite.All Directory.AccessAsUser.All"
  ```

## Gestion du domaine

1. Vérifiez la méthode d’authentification utilisée par votre domaine.
  ```powershell
  Get-MgDomain -DomainId yourdomain.com
  ```
2. Si le domaine est fédéré, examinez sa configuration de fédération.
  ```powershell
  Get-MgDomainFederationConfiguration -DomainId yourdomain.com
  ```

## Fédérer un domaine avec UserLock SSO

1. Récupérez le **certificat SAML de UserLock SSO** et stockez-le dans une variable PowerShell :
  ```powershell
  $response = Invoke-RestMethod -Uri "https://<userlock_sso>/api/infos/certificate" -Method GET
  $certData = $response.currentCertificate.rawCertificate
  ```
2. Fédérez votre domaine en utilisant UserLock SSO :
  ```powershell
  New-MgDomainFederationConfiguration `
    -DomainId yourdomain.com `
    -IssuerUri "https://<userlock_sso>/.domain.com" `
    -PassiveSignInUri "https://<userlock_sso>/saml/sso" `
    -SignOutUri "https://<userlock_sso>/connect/endsession" `
    -SigningCertificate $certData `
    -FederatedIdpMfaBehavior "acceptIfMfaDoneByFederatedIdp" `
    -IsSignedAuthenticationRequestRequired `
    -PreferredAuthenticationProtocol saml
  ```

## Annuler la fédération d'un domaine

Si vous devez annuler la fédération et revenir à une authentification gérée pour votre domaine, exécutez la commande suivante :

```powershell
Update-MgDomain -DomainId yourdomain.com -AuthenticationType Managed
```

## Gérer les utilisateurs

Vous devez d’abord vous  [connecter à l'API Graph.](/userlock/docs/guides/sso/configure-the-applications/microsoft/powershell#se-connecter-lapi-graph)

### Afficher les informations d'un utilisateur

```powershell
Get-MgUser -UserId user@domain.com -Property "Mail, DisplayName, GivenName, Surname, UserPrincipalName, OnPremisesImmutableId" | select Mail, DisplayName, GivenName, Surname, UserPrincipalName, OnPremisesImmutableId
```

### Synchroniser un nouvel utilisateur

> **Note**
>
> Cette méthode ne doit être utilisée que si vous rencontrez des problèmes avec [l'assistant UserLock SSO ou les solutions Microsoft Entra](/userlock/docs/guides/sso/configure-the-applications/microsoft/configure#step-2-synchronise-users)

1. Créez l’utilisateur dans le domaine par défaut en remplaçant les valeurs d’exemple dans ce script (xxx.onmicrosoft.com) :
  ```powershell
  $immutableId = [convert]::ToBase64String((Get-ADUser -Identity <samAccountName>| Select-Object -ExpandProperty ObjectGUID).ToByteArray())
  $PasswordProfile = @{Password = 'MySuperStrongPassword' ForceChangePasswordNextSignIn = $false}
  New-MgUser -UserPrincipalName newuser@office365domain.onmicrosoft.com -DisplayName '<Firstname> <Lastname>' -OnPremisesImmutableId $immutableId -PasswordProfile $PasswordProfile -AccountEnabled -MailNickname <Nickname>
  ```
2. Déplacez l’utilisateur vers le domaine fédéré :
  ```powershell
  Update-MgUser -UserId newuser@office365domain.onmicrosoft.com -UserPrincipalName newuser@domain.com
  ```

### Synchroniser un utilisateur existant

1. Déplacez l’utilisateur vers le domaine par défaut :
  ```powershell
  Update-MgUser -UserId newuser@domain.com -UserPrincipalName newuser@office365domain.onmicrosoft.com
  ```
2. Ajoutez la valeur de l’ImmutableId :
  ```powershell
  $immutableId = [convert]::ToBase64String((Get-ADUser -Identity <samAccountName>| Select-Object -ExpandProperty ObjectGUID).ToByteArray())
  Update-MgUser -UserId newuser@domain.com -OnPremisesImmutableId $immutableId
  ```
3. Déplacez à nouveau l’utilisateur vers le domaine fédéré :
  ```powershell
  Update-MgUser -UserId newuser@office365domain.onmicrosoft.com -UserPrincipalName newuser@domain.com
  ```
