New-EntraServicePrincipal
Crée un principal de service.
Syntaxe
Default (Par défaut)
New-EntraServicePrincipal
-AppId <String>
[-KeyCredentials <System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.KeyCredential]>]
[-Homepage <String>]
[-LogoutUrl <String>]
[-ServicePrincipalType <String>]
[-AlternativeNames <System.Collections.Generic.List`1[System.String]>]
[-PasswordCredentials <System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.PasswordCredential]>]
[-Tags <System.Collections.Generic.List`1[System.String]>]
[-AccountEnabled <String>]
[-ServicePrincipalNames <System.Collections.Generic.List`1[System.String]>]
[-AppRoleAssignmentRequired <Boolean>]
[-DisplayName <String>]
[-ReplyUrls <System.Collections.Generic.List`1[System.String]>]
[<CommonParameters>]
Description
Créez un principal de service.
Pour les applications mutualisées, l’utilisateur appelant doit également se trouver dans au moins l’un des rôles Microsoft Entra suivants :
- Administrateur d’application
- Administrateur d’applications cloud
Pour les applications monolocataires où l’utilisateur appelant est un utilisateur non administrateur, mais qui est le propriétaire de l’application de stockage, l’utilisateur doit avoir le rôle Développeur d’applications.
Exemples
Exemple 1 : Créer un principal de service à l’aide de DisplayName, AccountEnabled, Tags et AppRoleAssignmentRequired
Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
$params = @{
AccountEnabled = $true
AppId = $application.AppId
AppRoleAssignmentRequired = $true
DisplayName = $application.DisplayName
Tags = {WindowsAzureActiveDirectoryIntegratedApp}
}
New-EntraServicePrincipal @params
DisplayName Id AppId SignInAudience ServicePrincipalType
----------- -- ----- -------------- --------------------
Helpdesk Application bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg Application
Cet exemple montre comment créer un principal de service dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraApplication pour obtenir l’ID de l’application.
La balise -Tags {WindowsAzureActiveDirectoryIntegratedApp} est utilisée pour que ce principal de service s’affiche dans la liste des applications intégrées dans le portail d’administration.
-
-AccountEnabledle paramètre spécifie true si le compte principal de service est activé, sinon false. -
-AppIdspécifie l’identificateur unique de l’application associée (sa propriété appId). -
-DisplayNamespécifie le nom complet du principal de service. -
-AppRoleAssignmentRequiredindique si une attribution de rôle d’application est requise.
Exemple 2 : Créer un principal de service à l’aide de la page d’accueil, de logoutUrl et de ReplyUrls
Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
$params = @{
AppId = $application.AppId
Homepage = 'https://localhost/home'
LogoutUrl = 'htpp://localhost/logout'
ReplyUrls = 'https://localhost/redirect'
}
New-EntraServicePrincipal @params
DisplayName Id AppId SignInAudience ServicePrincipalType
----------- -- ----- -------------- --------------------
Helpdesk Application bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg Application
Cet exemple montre comment créer un principal de service dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraApplication pour obtenir l’ID de l’application.
-
-AppIdspécifie l’identificateur unique de l’application associée (sa propriété appId). -
-Homepagespécifie la page d’accueil ou la page d’accueil de l’application. -
-LogoutUrlspécifie l’URL de déconnexion. -
-ReplyUrlsspécifie les URL auxquelles les jetons utilisateur sont envoyés pour la connexion avec l’application associée.
Exemple 3 : Créer un principal de service par KeyCredentials
Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$creds = New-Object Microsoft.Open.AzureAD.Model.KeyCredential
$creds.CustomKeyIdentifier = [System.Text.Encoding]::UTF8.GetBytes('Test')
$startdate = Get-Date -Year 2023 -Month 10 -Day 23
$creds.StartDate = $startdate
$creds.Type = 'Symmetric'
$creds.Usage = 'Sign'
$creds.Value = [System.Text.Encoding]::UTF8.GetBytes('strong-cred-value')
$creds.EndDate = Get-Date -Year 2024 -Month 10 -Day 23
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
New-EntraServicePrincipal -AppId $application.AppId -KeyCredentials $creds
DisplayName Id AppId SignInAudience ServicePrincipalType
----------- -- ----- -------------- --------------------
Helpdesk Application bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADMyOrg Application
Cet exemple montre comment créer un principal de service dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraApplication pour obtenir l’ID de l’application.
-
-AppIdspécifie l’identificateur unique de l’application associée (sa propriété appId). -
-KeyCredentialsspécifie la collection d’informations d’identification de clé associées au principal de service.
Exemple 4 : Créer un principal de service par AlternativeNames, ServicePrincipalType et ServicePrincipalName
Connect-Entra -Scopes 'Application.ReadWrite.All','Application.ReadWrite.OwnedBy'
$application = Get-EntraApplication -Filter "DisplayName eq 'Helpdesk Application'"
New-EntraServicePrincipal -AppId $application.AppId -AlternativeNames 'sktest2' -ServicePrincipalType 'Application' -ServicePrincipalNames $application.AppId
DisplayName Id AppId SignInAudience ServicePrincipalType
----------- -- ----- -------------- --------------------
Helpdesk Application bbbbbbbb-1111-2222-3333-cccccccccccc 00001111-aaaa-2222-bbbb-3333cccc4444 AzureADandPersonalMicrosoftAccount Application
Cet exemple montre comment créer un principal de service dans Microsoft Entra ID. Vous pouvez utiliser la commande Get-EntraApplication pour obtenir l’ID de l’application.
-
-AppIdspécifie l’identificateur unique de l’application associée (sa propriété appId). -
-AlternativeNamesspécifie les autres noms de ce principal de service. -
-ServicePrincipalTypespécifie le type du principal de service. -
-ServicePrincipalNamesspécifie un tableau de noms de principaux de service.
Paramètres
-AccountEnabled
True si le compte de principal de service est activé ; sinon, false.
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AlternativeNames
Autres noms pour ce principal de service.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[System.String] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AppId
Identificateur unique de l’application associée (sa propriété appId).
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-AppRoleAssignmentRequired
Indique si une attribution de rôle d’application est requise.
Propriétés du paramètre
| Type: | System.Boolean |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-DisplayName
Spécifie le nom complet du principal de service.
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Homepage
Page d’accueil ou page d’accueil de l’application.
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-KeyCredentials
Collection d’informations d’identification clées associées au principal de service.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.KeyCredential] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LogoutUrl
Spécifie l’URL de déconnexion.
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-PasswordCredentials
Collection d’informations d’identification associées à l’application.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[Microsoft.Open.AzureAD.Model.PasswordCredential] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ReplyUrls
Les URL auxquelles les jetons utilisateur sont envoyés pour se connecter avec l'application associée, ou les URI de redirection vers lesquelles les codes d'autorisation et les jetons d'accès OAuth 2.0 sont envoyés pour l'application associée.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[System.String] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ServicePrincipalNames
Spécifie un tableau de noms de principal de service. En fonction de la collection identifierURIs et de la propriété appId de l’application, ces URI sont utilisés pour référencer le principal de service d’une application. Un client utilise ServicePrincipalNames pour :
- remplissez requiredResourceAccess, via « Autorisations pour d’autres applications » dans le portail Azure Classic.
- Spécifiez un URI de ressource pour acquérir un jeton d’accès, qui est l’URI retourné dans la revendication.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[System.String] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ServicePrincipalType
Type du principal de service.
Propriétés du paramètre
| Type: | System.String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Tags
Balises liées à ce principal de service.
Notez que si vous avez l’intention que ce principal de service s’affiche dans la liste Toutes les applications dans le portail d’administration, vous devez définir cette valeur sur {WindowsAzureActiveDirectoryIntegratedApp}.
Propriétés du paramètre
| Type: | System.Collections.Generic.List`1[System.String] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.