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.
Istniejące zasoby programu Microsoft Graph można odwoływać w szablonach Bicep według obsługiwanej właściwości klucza dostarczonego przez klienta. Zasoby utworzone za pośrednictwem protokołu HTTP POST mogą nie mieć tego zestawu właściwości i wymagać jednorazowego wypełniania.
Po ustawieniu właściwość klucza dostarczonego przez klienta umożliwia zadeklarowanie zasobu w pliku Bicep na potrzeby ponownego wdrożenia. Aby odczytać właściwości zasobu bez ponownego wdrażania, użyj istniejącego słowa kluczowego.
Z tego artykułu dowiesz się, jak używać słowa kluczowego existing i klucza dostarczonego przez klienta do odczytywania właściwości istniejących zasobów programu Microsoft Graph.
Ważne
Program Microsoft Graph Bicep jest obecnie w wersji zapoznawczej. Zobacz Dodatkowe warunki użytkowania wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta lub wersji zapoznawczej albo w inny sposób nie zostały jeszcze wydane jako ogólnie dostępne.
Bicep umożliwia odczytywanie istniejących zasobów przy użyciu istniejącego słowa kluczowego. W przypadku zasobów programu Microsoft Graph zasoby muszą być najpierw jednoznacznie identyfikowane przez właściwość klucza dostarczonego przez klienta.
Wymagania wstępne
- Mieć subskrypcję platformy Azure. Jeśli nie masz, możesz utworzyć bezpłatne konto.
- Mieć najmniej uprzywilejowane uprawnienia lub role, aby odczytywać lub aktualizować istniejący zasób albo być właścicielem zasobu. Aby zobaczyć, jakie role należy przypisać, zapoznaj się z rolami o najmniejszych uprawnieniach uprzywilejowanych według zadań i domyślnych użytkowników .
- Zainstaluj narzędzia Bicep do tworzenia i wdrażania. Ten przewodnik Szybki start używa programu VS Code z rozszerzeniem Bicep do tworzenia i interfejsu wiersza polecenia platformy Azure na potrzeby wdrażania. Przykłady są również udostępniane dla programu Azure PowerShell.
- Pliki Bicep można wdrożyć interaktywnie lub za pomocą wdrożenia typu zero-touch (tylko aplikacja).
Dołączanie istniejących zasobów programu Microsoft Graph i używanie tych zasobów w pliku Bicep
W tym przykładzie możesz mieć niektóre zasoby programu Microsoft Graph, które nie zostały utworzone za pomocą wdrożenia pliku Bicep, które są teraz potrzebne do użycia lub zarządzania w pliku Bicep. Na przykład chcesz zaktualizować istniejącą aplikację lub wdrożyć grupę zabezpieczeń #1 (nowe wdrożenie lub ponowne wdrożenie) przy użyciu istniejącej grupy #2 i jednostki usługi #2 jako jej elementów członkowskich.
Aby odwołać się do istniejącej grupy #2 w pliku Bicep, musi mieć zestaw właściwości uniqueName . Aby odwołać się do istniejącej jednostki usługi #2, jeśli nie znasz jej identyfikatora appId, jej aplikacja nadrzędna musi mieć ustawioną właściwość uniqueName .
W tej sekcji omówiono następujące zagadnienia:
- Dodaj właściwość uniqueName dla istniejącej grupy i aplikacji przy użyciu interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.
- Zaktualizuj istniejącą aplikację w pliku Bicep.
- Użyj słowa kluczowego
existingw tym samym pliku Bicep, aby uzyskać identyfikator istniejącej grupy oraz głównego elementu usługi. - W pliku Bicep skonfiguruj ustawienia, aby wdrożyć grupę zabezpieczeń z istniejącą grupą i jednostką usługi jako jej członkami oraz jednostką usługi jako właścicielem.
- Wdróż plik Bicep.
Krok 1. Ustawianie właściwości uniqueName dla grupy i aplikacji
Następujące żądanie ustawia unikatową nazwę dla istniejącej grupy i aplikacji odpowiednio na TestGroup-20241202 i TestApp-20241202.
Ważne
Nie można zmienić właściwości uniqueName klucza dostarczonego przez klienta po ustawieniu.
# Sign in to Azure
az login
## Create a resource group
az group create --name exampleRG --location eastus
## Update the uniqueName property of the group and application
## Note: Replace cec00de2-08b9-4081-aaf5-55d78ac9b4c4 and 25ae6414-05a1-4cce-9899-ad11d9eedde2 with IDs for your group and application.
az rest --method patch --url 'https://graph.microsoft.com/v1.0/groups/cec00de2-08b9-4081-aaf5-55d78ac9b4c4' --body '{\"uniqueName\": \"TestGroup-20241202\"}' --headers "content-type=application/json"
az rest --method patch --url 'https://graph.microsoft.com/v1.0/applications/25ae6414-05a1-4cce-9899-ad11d9eedde2' --body '{\"uniqueName\": \"TestApp-20241202\"}' --headers "content-type=application/json"
Krok 2. Dodawanie istniejącej grupy i jednostki usługi do członków i właścicieli innej grupy
Teraz możesz użyć słowa kluczowego existing , aby odwołać się do istniejącej grupy #2 i jednostki usługi #2, pobrać ich identyfikatory i dodać je do kolekcji właścicieli i członków innej grupy.
Uruchom program VS Code i utwórz dwa nowe pliki main.bicep i bicepconfig.json, upewniając się, że znajdują się one w tym samym folderze.
Włącz niektóre funkcje w wersji zapoznawczej, konfigurując bicepconfig.json:
{ "experimentalFeaturesEnabled": { "extensibility": true } }W pliku main.bicep dodaj następujący kod Bicep.
extension 'br:mcr.microsoft.com/bicep/extensions/microsoftgraph/v1.0:0.1.8-preview' // TEMPLATE OVERVIEW: Updates an existing app and // uses existing group and existing SP and sets them as members of another group // existing group #2 to be added as a member resource groupMember 'Microsoft.Graph/groups@v1.0' existing = { uniqueName: 'TestGroup-20241202' } // existing application to be updated with a new display name // and for its SP #2 to be added as a member (to group #1) resource application 'Microsoft.Graph/applications@v1.0' = { uniqueName: 'TestApp-20241202' displayName: 'Updating the displayName to something new' } resource servicePrincipalMember 'Microsoft.Graph/servicePrincipals@v1.0' existing = { appId: application.appId } // Add preceding service principal and group as members of another group // Add preceding service principal as owner of the group. // If Group-1 uniqueName doesn't exist, this is a new deployment. // If Group-1 uniqueName exists, this is a redeployment/update. For redeployments, existing members and owners are retained. resource group 'Microsoft.Graph/groups@v1.0' = { displayName: 'Group-1' mailEnabled: false mailNickname: 'Group-1' securityEnabled: true uniqueName: 'Group-1' members: [groupMember.id, servicePrincipalMember.id] owners: [servicePrincipalMember.id] }Wdróż plik Bicep przy użyciu interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.
## Create a resource group az group create --name exampleRG --location eastus ## Deploy the Bicep file az deployment group create --resource-group exampleRG --template-file main.bicep
Po zakończeniu wdrażania powinien zostać wyświetlony komunikat informujący o pomyślnym wdrożeniu.