Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Z tego artykułu dowiesz się, jak utworzyć aplikację niestandardową i przyznać jej uprawnienia przy użyciu programu Microsoft Entra PowerShell. Ten proces obejmuje definiowanie ról, przypisywanie użytkowników i grup oraz ustawianie uprawnień interfejsu API do efektywnego zarządzania zasobami Microsoft Entra.
Zrozumienie tych kroków jest niezbędne do bezpiecznego zarządzania dostępem i zapewnienia, że aplikacje mają odpowiednie uprawnienia. Pomaga w utrzymaniu bezpieczeństwa i wydajności operacyjnej w ekosystemie Microsoft Entra.
Prerequisites
Aby utworzyć aplikację niestandardową i przyznać jej uprawnienia, potrzebne są następujące elementy:
- Konto użytkownika Microsoft Entra. Jeśli jeszcze go nie masz, możesz bezpłatnie utworzyć konto.
- Jedna z następujących ról:
- Wymagane zakresy (PowerShell):
AppRoleAssignment.ReadWrite.All, ,Application.ReadWrite.AllUser.Read.All, ,Group.Read.AllDelegatedPermissionGrant.ReadWrite.All
Tworzenie aplikacji przy użyciu programu PowerShell
Użyj aplikacji niestandardowej, aby odizolować i ograniczyć uprawnienia przyznane dla zasobu Microsoft Entra.
# Connect to Entra with required scopes
Connect-Entra -Scopes 'Application.ReadWrite.All'
# Define application name and redirect URI
$appName = 'Entra PowerShell Helpdesk App'
$redirectUri = 'http://localhost'
# Create a new application
$app = New-EntraApplication -DisplayName $appName -PublicClient @{ RedirectUris = $redirectUri } -IsFallbackPublicClient $False
# Create a service principal for the application
$servicePrincipal = New-EntraServicePrincipal -AppId $app.AppId
Włączanie wymaganej funkcji przypisania przy użyciu programu PowerShell
# Set service principal parameters
Set-EntraServicePrincipal -ServicePrincipalId $servicePrincipal.Id -AppRoleAssignmentRequired $True
Przypisywanie użytkowników i grup przy użyciu programu PowerShell
# Get a user and a group
$user = Get-EntraUser -UserId 'AdeleV@contoso.com'
$group = Get-EntraGroup -Search 'Sales and Marketing'
# Assign users and groups to the application
$emptyGuidUser = [Guid]::Empty.ToString()
New-EntraUserAppRoleAssignment -ObjectId $user.Id -PrincipalId $user.Id -ResourceId $servicePrincipal.Id -Id $emptyGuidUser
$emptyGuidGroup = [Guid]::Empty.ToString()
New-EntraGroupAppRoleAssignment -GroupId $group.Id -PrincipalId $group.Id -ResourceId $servicePrincipal.Id -Id $emptyGuidGroup
Definiowanie wymaganych zasobów i uprawnień przy użyciu programu PowerShell
# Get Graph service principal
$graphApiId = '00000003-0000-0000-c000-000000000000'
$graphServicePrincipal = Get-EntraServicePrincipal -Filter "AppId eq '$graphApiId'"
$delegatedPermission = 'User.Read.All'
$app = Get-EntraApplication -Filter "DisplayName eq '$appName'"
# Create resource access object
$resourceAccessDelegated = New-Object Microsoft.Open.MSGraph.Model.ResourceAccess
$resourceAccessDelegated.Id = ((Get-EntraServicePrincipal -ServicePrincipalId $graphServicePrincipal.Id).Oauth2PermissionScopes | Where-Object { $_.Value -eq $delegatedPermission }).Id
$resourceAccessDelegated.Type = 'Scope'
# Create required resource access object
$requiredResourceAccessDelegated = New-Object Microsoft.Open.MSGraph.Model.RequiredResourceAccess
$requiredResourceAccessDelegated.ResourceAppId = $graphApiId
$requiredResourceAccessDelegated.ResourceAccess = $resourceAccessDelegated
# Set application required resource access
Set-EntraApplication -ApplicationId $app.Id -RequiredResourceAccess $requiredResourceAccessDelegated
Przypisywanie uprawnień interfejsu API do aplikacji przy użyciu programu PowerShell
Uprawnienia delegowane lub uprawnienia aplikacji można przypisać do aplikacji.
$delegatedPermission = 'User.Read.All'
$graphApiId = '00000003-0000-0000-c000-000000000000'
$servicePrincipal = Get-EntraServicePrincipal -Filter "DisplayName eq '$appName'"
$graphServicePrincipal = Get-EntraServicePrincipal -Filter "AppId eq '$graphApiId'"
# Grant OAuth2 permission
New-EntraOauth2PermissionGrant -ClientId $servicePrincipal.Id -ConsentType 'AllPrincipals' -ResourceId $graphServicePrincipal.Id -Scope $delegatedPermission
Resources
Pobierz i uruchom pełny skrypt:
- Użyj przykładowego skryptu create-custom-app-with-delegated-permissions , aby utworzyć niestandardową aplikację z delegowanymi uprawnieniami.
- Użyj przykładowego skryptu create-custom-app-with-application-permissions , aby utworzyć niestandardową aplikację z uprawnieniami aplikacji.
Tworzenie aplikacji w centrum administracyjne Microsoft Entra
Aby utworzyć niestandardowe aplikacje do nawiązywania połączenia z Microsoft Entra ID przy użyciu programu Microsoft Entra PowerShell, wykonaj kroki opisane w poniższej sekcji. Użyj aplikacji niestandardowej, aby odizolować i ograniczyć uprawnienia przyznane dla zasobu Microsoft Entra.
- Zaloguj się do centrum administracyjnego Microsoft Entra z uprawnieniami co najmniej Administratora aplikacji w chmurze.
- Przejdź do pozycji Tożsamość>Aplikacje>Rejestracje aplikacji, a następnie wybierz pozycję Nowa rejestracja.
- Wprowadź nazwę aplikacji, na przykład Entra PowerShell Five.
- W obszarze Obsługiwane typy kont wybierz pozycję Konta w tym katalogu organizacji.
- W polu URI przekierowania wybierz: — Klient publiczny/natywny z listy rozwijanej — wartość URI:
http://localhost - Wybierz opcję Zarejestruj.
Note
W sekcji Przegląd aplikacji skopiuj identyfikator aplikacji (klienta) oraz identyfikator katalogu (dzierżawy). Wartości są używane podczas nawiązywania połączenia z Microsoft Entra ID.
Włączanie wymaganej funkcji przypisania w centrum administracyjne Microsoft Entra
Aby zarządzać zasobami, do których aplikacja ma dostęp w Twojej dzierżawie, znajdź jednostkę usługi tej aplikacji w okienku Aplikacje dla przedsiębiorstw.
- Przejdź do pozycji Identity>Applications>Aplikacje dla przedsiębiorstw>Wszystkie aplikacje i wybierz utworzoną aplikację.
- W sekcji Zarządzanie wybierz opcję Właściwości i ustaw Czy przypisanie jest wymagane? na Tak.
- Wybierz opcję Zapisz.
Przypisywanie użytkowników i grup w centrum administracyjne Microsoft Entra
- W obszarze Zarządzanie wybierz pozycję Użytkownicy i grupy.
- Wybierz pozycję Dodaj użytkownika/grupę i dodaj użytkowników i grupy dozwolone do korzystania z tej aplikacji.
- Po dodaniu wszystkich użytkowników i grup wybierz pozycję Przypisz.
Przypisz aplikacji uprawnienia interfejsu API w centrum administracyjnym Microsoft Entra
Musisz skonfigurować uprawnienia Microsoft Graph dla nowej aplikacji, aby nawiązać połączenie z Microsoft Entra ID i zarządzać zasobami Microsoft Entra.
- Przejdź do pozycji Identity>Applications>App Registrations>Wszystkie aplikacje i wybierz utworzoną aplikację.
- W obszarze Uprawnienia interfejsu API wybierz pozycję Dodaj uprawnienie>, a następnie wybierz Interfejsy API firmy Microsoft > Microsoft Graph.
- Wybierz wymagany typ uprawnień, delegowane lub uprawnienia aplikacji.
- Jeśli musisz zalogować się do aplikacji, aby zarządzać zasobami w Microsoft Entra ID, wybierz pozycję Uprawnienia delegowane.
- Jeśli chcesz, aby aplikacja mogła uzyskiwać dostęp do zasobów Microsoft Entra samodzielnie bez interakcji z użytkownikiem, wybierz pozycję Uprawnienia aplikacji
- Wyszukaj wymagane uprawnienie, na przykład
User.Read.All. - Wybierz pozycję Udziel zgody administratora dla pozycji TenantName. Wybierz opcję Tak. Upewnij się, że stan zawiera zielony znacznik wyboru.
Logowanie przy użyciu nowej aplikacji
Teraz możesz użyć nowo utworzonej aplikacji, łącząc się z:
Connect-Entra -ClientId <Your_APPLICATION_Id_Here> -TenantId <Your_TENANT_Id_Here>
Aby uzyskać więcej opcji połączenia, zobacz szczegóły polecenia Connect-Entra .