Csatlakozás különböző előfizetésekben lévő virtuális hálózatok szolgáltatásnévvel
Léteznek olyan esetek, amikor különböző előfizetésekben lévő virtuális hálózatokat kell csatlakoztatnia felhasználói fiókok vagy vendégfiókok használata nélkül. Ebben a virtuális hálózat útmutatójában megtudhatja, hogyan társíthat két virtuális hálózatot szolgáltatásnévvel (SPN-ekkel) a különböző előfizetésekben. A különböző előfizetésekben lévő virtuális hálózatok és a Microsoft Entra ID-bérlők közötti virtuális hálózatok közötti társviszonyt az Azure CLI-vel vagy a PowerShell-lel kell létesíteni. Az Azure Portalon jelenleg nincs lehetőség virtuális hálózatok és spn-ek közötti társviszony létesítésére különböző előfizetésekben.
Előfeltételek
Egy Azure-fiók két aktív előfizetéssel és két Microsoft Entra ID-bérlővel. Fiók ingyenes létrehozása.
Fiókengedélyek szolgáltatásnév létrehozásához, alkalmazásengedélyek hozzárendeléséhez és erőforrások létrehozásához az egyes előfizetésekhez társított Microsoft Entra ID-bérlőben.
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: A Bash rövid útmutatója az Azure Cloud Shellben.
Ha inkább helyi cli-referenciaparancsokat szeretne futtatni, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszert használ, fontolja meg az Azure CLI Docker-tárolóban való futtatását. További információ: Az Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd : Bejelentkezés az Azure CLI-vel.
Amikor a rendszer kéri, először telepítse az Azure CLI-bővítményt. További információ a bővítményekről: Bővítmények használata az Azure CLI-vel.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
- Ehhez az útmutatóhoz az Azure CLI 2.31.0-s vagy újabb verziója szükséges. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.
Felhasznált erőforrások
EGYSZERŰ SZOLGÁLTATÁSNÉV | Erőforráscsoport | Előfizetés/bérlő | Virtuális hálózat | Hely |
---|---|---|---|---|
spn-1-peer-vnet | test-rg-1 | előfizetés-1 | vnet-1 | USA 2. keleti régiója |
spn-2-peer-vnet | test-rg-2 | subscription-2 | vnet-2 | USA 2. nyugati régiója |
1. előfizetési erőforrások létrehozása
Az az sign-in használatával jelentkezzen be az 1. előfizetésbe egy olyan felhasználói fiókkal, amely engedéllyel rendelkezik egy erőforráscsoport, egy virtuális hálózat és egy SPN létrehozásához az 1. előfizetéshez társított Microsoft Entra ID-bérlőben
az login
Hozzon létre egy erőforráscsoportot az az group create paranccsal.
az group create \ --name test-rg-1 \ --location eastus2
Az az network vnet create használatával hozzon létre egy vnet-1 nevű virtuális hálózatot az 1. előfizetésben.
az network vnet create \ --resource-group test-rg-1 \ --location eastus2 \ --name vnet-1 \ --address-prefixes 10.0.0.0/16 \ --subnet-name subnet-1 \ --subnet-prefixes 10.0.0.0/24
Spn-1-peer-vnet létrehozása
Hozzon létre spn1-peer-vnetet az előző lépésben létrehozott virtuális hálózat hatókörével. Ez az egyszerű szolgáltatásnév egy későbbi lépésben hozzáadódik a vnet-2 hatóköréhez, hogy lehetővé tegye a virtuális hálózati társ számára.
Az az network vnet show használatával helyezze el a korábban létrehozott virtuális hálózat erőforrás-azonosítóját egy változóban a későbbi lépésben való használatra.
vnetid=$(az network vnet show \ --resource-group test-rg-1 \ --name vnet-1 \ --query id \ --output tsv)
Az az ad sp create-for-rbac használatával spn-1-peer-vnetet hozhat létre a virtuális hálózat vnet-1 virtuális hálózatára hatókörrel rendelkező hálózati közreműködői szerepkörrel.
az ad sp create-for-rbac \ --name spn-1-peer-vnet \ --role "Network Contributor" \ --scope $vnetid
Jegyezze fel a lépésben a létrehozás kimenetét. A jelszó csak ebben a kimenetben jelenik meg. Másolja a jelszót egy biztonságos helyre a későbbi bejelentkezési lépésekben való használatra.
{ "appId": "baa9d5f8-c1f9-4e74-b9fa-b5bc551e6cd0", "displayName": "spn-1-peer-vnet", "password": "", "tenant": "c2d26d12-71cc-4f3b-8557-1fa18d077698" }
A rendszer a szolgáltatásnév appId azonosítóját használja a következő lépésekben az egyszerű szolgáltatásnév konfigurációjának befejezéséhez. Az az ad sp listával helyezze az SPN appId azonosítóját egy változóba későbbi használatra.
appid1=$(az ad sp list \ --display-name spn-1-peer-vnet \ --query [].appId \ --output tsv)
Az előző lépésben létrehozott egyszerű szolgáltatásnévnek átirányítási URI-val kell rendelkeznie a hitelesítési folyamat jóváhagyásának befejezéséhez, és több-bérlős használatra kell konvertálni. Az az ad alkalmazásfrissítéssel átirányítási URI-ként adhat hozzáhttps://www.microsoft.com, és engedélyezheti a több-bérlős szolgáltatást az spn-1-peer-vneten.
az ad app update \ --id $appid1 \ --sign-in-audience AzureADMultipleOrgs \ --web-redirect-uris https://www.microsoft.com
A szolgáltatásnévnek User.Read engedélyekkel kell rendelkeznie a címtárhoz. Az az ad app permission add and az ad app permission grant to add the Microsoft Graph permissions of User.Read to the service principal.
az ad app permission add \ --id $appid1 \ --api 00000003-0000-0000-c000-000000000000 \ --api-permissions e1fe6dd8-ba31-4d61-89e7-88639da4683d=Scope az ad app permission grant \ --id $appid1 \ --api 00000003-0000-0000-c000-000000000000 \ --scope User.Read
2. előfizetési erőforrások létrehozása
Az az login használatával jelentkezzen be a 2. előfizetésbe egy olyan felhasználói fiókkal, amely engedéllyel rendelkezik egy erőforráscsoport, egy virtuális hálózat és egy SPN létrehozásához a 2. előfizetéshez társított Microsoft Entra ID-bérlőben
az login
Erőforráscsoport létrehozása az az group create használatával.
az group create \ --name test-rg-2 \ --location westus2
Az az network vnet create használatával hozzon létre egy vnet-2 nevű virtuális hálózatot a 2. előfizetésben.
az network vnet create \ --resource-group test-rg-2 \ --location westus2 \ --name vnet-2 \ --address-prefixes 10.1.0.0/16 \ --subnet-name subnet-1 \ --subnet-prefixes 10.1.0.0/24
Spn-2-peer-vnet létrehozása
Hozzon létre spn-2-peer-vnetet az előző lépésben létrehozott virtuális hálózat hatókörével. Ez az egyszerű szolgáltatásnév egy későbbi lépésben hozzáadódik a vnet-2 hatóköréhez, hogy lehetővé tegye a virtuális hálózati társ számára.
Az az network vnet show használatával helyezze el a korábban létrehozott virtuális hálózat erőforrás-azonosítóját egy változóban a későbbi lépésben való használatra.
vnetid=$(az network vnet show \ --resource-group test-rg-2 \ --name vnet-2 \ --query id \ --output tsv)
Az az ad sp create-for-rbac használatával hozzon létre spn-2-peer-vnetet a 2. virtuális hálózatra hatókörrel rendelkező hálózati közreműködői szerepkörrel.
az ad sp create-for-rbac \ --name spn-2-peer-vnet \ --role "Network Contributor" \ --scope $vnetid
Jegyezze fel a lépésben a létrehozás kimenetét. Másolja a jelszót egy biztonságos helyre a későbbi bejelentkezési lépésekben való használatra. A jelszó nem jelenik meg újra.
A kimenet az alábbi kimenethez hasonlóan néz ki.
{ "appId": "19b439a8-614b-4c8e-9e3e-b0c901346362", "displayName": "spn-2-peer-vnet", "password": "", "tenant": "24baaf57-f30d-4fba-a20e-822030f7eba3" }
A rendszer a szolgáltatásnév appId azonosítóját használja a következő lépésekben az egyszerű szolgáltatásnév konfigurációjának befejezéséhez. Az az ad sp listával helyezze az SPN azonosítóját egy változóba későbbi használatra.
appid2=$(az ad sp list \ --display-name spn-2-peer-vnet \ --query [].appId \ --output tsv)
Az előző lépésben létrehozott egyszerű szolgáltatásnévnek átirányítási URI-val kell rendelkeznie a hitelesítési folyamat jóváhagyásának befejezéséhez, és több-bérlős használatra kell konvertálni. Az az ad alkalmazásfrissítéssel átirányítási URI-ként adhat hozzáhttps://www.microsoft.com, és engedélyezheti a több-bérlős szolgáltatást az spn-2-peer-vneten.
az ad app update \ --id $appid2 \ --sign-in-audience AzureADMultipleOrgs \ --web-redirect-uris https://www.microsoft.com
A szolgáltatásnévnek User.Read engedélyekkel kell rendelkeznie a címtárhoz. Az az ad app permission add and az ad app permission grant toadd the Microsoft Graph permissions of User.Read to the service principal.
az ad app permission add \ --id $appid2 \ --api 00000003-0000-0000-c000-000000000000 \ --api-permissions e1fe6dd8-ba31-4d61-89e7-88639da4683d=Scope az ad app permission grant \ --id $appid2 \ --api 00000003-0000-0000-c000-000000000000 \ --scope User.Read
Spn-2-peer-vnet regisztrálása az 1. előfizetésben, és engedélyek hozzárendelése a vnet-1-hez
A Microsoft Entra ID-bérlőben rendszergazdai engedélyekkel rendelkező felhasználói fióknak be kell fejeznie az spn-2-vnet-peer előfizetés-1-hez való hozzáadásának folyamatát. A befejezés után az spn-2 vnet-peer engedélyekkel rendelhető hozzá a vnet-1-hez.
Spn-2-peer-vnet alkalmazás regisztrálása az 1. előfizetésben
Az 1. előfizetésű Microsoft Entra ID-bérlő rendszergazdájának jóvá kell hagynia az spn-2-peer-vnet szolgáltatásnevet, hogy az hozzáadható legyen az 1. virtuális hálózathoz. Az alábbi paranccsal jelentkezzen be a 2. előfizetésbe az spn-2-peer-vnet appID azonosítójának megkereséséhez.
Az az login használatával jelentkezzen be a 2. előfizetésbe.
az login
Az az ad sp listával szerezze be az spn-2-peer-vnet appId azonosítóját. Jegyezze fel az appID-t a kimenetben. Ezt az appID-t a rendszer a hitelesítési URL-címben használja a későbbi lépésekben.
appid2=$(az ad sp list \ --display-name spn-2-peer-vnet \ --query [].appId \ --output tsv) echo $appid2
Az spn-2-peer-vnet és a Microsoft Entra ID bérlőazonosítója az 1. alcímhez használható appid használatával hozza létre a bejelentkezési URL-címet a jóváhagyáshoz. Az URL-cím a következő példából épül fel:
https://login.microsoftonline.com/entra-tenant-id-subscription-1/oauth2/authorize?client_id={$appid2}&response_type=code&redirect_uri=https://www.microsoft.com
Az URL-cím az alábbi példához hasonlóan néz ki.
https://login.microsoftonline.com/c2d26d12-71cc-4f3b-8557-1fa18d077698/oauth2/authorize?client_id=19b439a8-614b-4c8e-9e3e-b0c901346362&response_type=code&redirect_uri=https://www.microsoft.com
Nyissa meg az URL-címet egy webböngészőben, és jelentkezzen be egy rendszergazdával a Microsoft Entra ID-bérlőben az 1. előfizetésben.
Hagyja jóvá az spn-2-peer-vnet alkalmazást. A microsoft.com kezdőlapja megjeleníti, hogy a hitelesítés sikeres volt-e.
Spn-2-peer-vnet hozzárendelése a vnet-1-hez
Miután a rendszergazda jóváhagyta az spn-2-peer-vnetet, vegye fel a virtuális hálózat vnet-1 hálózatához hálózati közreműködőként.
Az az login használatával jelentkezzen be az 1. előfizetésbe.
az login
Az az ad sp listával keresse meg az spn-2-peer-vnet appId azonosítóját, és helyezzen egy változóba későbbi használatra.
appid2=$(az ad sp list \ --display-name spn-2-peer-vnet \ --query [].appId \ --output tsv)
Az Az network vnet show használatával szerezze be a vnet-1 erőforrás-azonosítóját egy változóba a későbbi lépésekben való használatra.
vnetid=$(az network vnet show \ --resource-group test-rg-1 \ --name vnet-1 \ --query id \ --output tsv)
Az az role assignment használatával hozza létre a következő parancsot az spn-2-peer-vnet hozzáadásához a vnet-1-hez hálózati közreműködőként.
az role assignment create --assignee $appid2 \ --role "Network Contributor" \ --scope $vnetid
Spn-1-peer-vnet regisztrálása a 2. előfizetésben, és engedélyek hozzárendelése a vnet-2-hez
A Microsoft Entra ID-bérlő rendszergazdai engedélyekkel rendelkező felhasználói fiókjának be kell fejeznie az spn-1-peer-vnet előfizetés-2-hez való hozzáadásának folyamatát. A befejezés után az spn-1-peer-vnet engedélyeket rendelhet a vnet-2-hez.
Spn-1-peer-vnet alkalmazás regisztrálása a 2. előfizetésben
A 2. előfizetésű Microsoft Entra ID-bérlő rendszergazdájának jóvá kell hagynia az spn-1-peer-vnet szolgáltatásnevet, hogy az hozzáadható legyen a vnet-2 virtuális hálózathoz. Az alábbi paranccsal jelentkezzen be az 1. előfizetésbe az spn-1-peer-vnet alkalmazásazonosítójának megkereséséhez.
Az az login használatával jelentkezzen be az 1. előfizetésbe.
az login
Az az ad sp listával szerezze be az spn-1-peer-vnet appId azonosítóját. Jegyezze fel az appID-t a kimenetben. Ezt az appID-t a rendszer a hitelesítési URL-címben használja a későbbi lépésekben.
appid1=$(az ad sp list \ --display-name spn-1-peer-vnet \ --query [].appId \ --output tsv) echo $appid1
Az spn-1-peer-vnet és a Microsoft Entra ID-bérlőazonosító használatával hozza létre a bejelentkezési URL-címet a jóváhagyáshoz. Az URL-cím a következő példából épül fel:
https://login.microsoftonline.com/entra-tenant-id-subscription-2/oauth2/authorize?client_id={$appid1}&response_type=code&redirect_uri=https://www.microsoft.com
Az URL-cím az alábbi példához hasonlóan néz ki.
https://login.microsoftonline.com/24baaf57-f30d-4fba-a20e-822030f7eba3/oauth2/authorize?client_id=baa9d5f8-c1f9-4e74-b9fa-b5bc551e6cd0&response_type=code&redirect_uri=https://www.microsoft.com
Nyissa meg az URL-címet egy webböngészőben, és jelentkezzen be egy rendszergazdával a Microsoft Entra ID-bérlőben a 2. előfizetésben.
Hagyja jóvá az spn-1-peer-vnet alkalmazást. A microsoft.com kezdőlapja megjeleníti, hogy a hitelesítés sikeres volt-e.
Spn-1-peer-vnet hozzárendelése a vnet-2-hez
Miután a rendszergazda jóváhagyta az spn-1-peer-vnetet, vegye fel a virtuális hálózat vnet-2 hálózatához hálózati közreműködőként.
Az az login használatával jelentkezzen be a 2. előfizetésbe.
az login
Az az ad sp listával keresse meg az spn-1-peer-vnet appId azonosítóját, és helyezzen egy változóba későbbi használatra.
appid1=$(az ad sp list \ --display-name spn-1-peer-vnet \ --query [].appId \ --output tsv)
Az az network vnet show használatával szerezze be a vnet-2 erőforrás-azonosítóját egy változóba a későbbi lépésekben való használathoz.
vnetid=$(az network vnet show \ --resource-group test-rg-2 \ --name vnet-2 \ --query id \ --output tsv)
Az az role assignment create használatával spn-1-peer-vnetet adhat hozzá a vnet-2-hez hálózati közreműködőként.
az role assignment create --assignee $appid1 \ --role "Network Contributor" \ --scope $vnetid
Társ vnet-1-ről vnet-2-hez és vnet-2-ről vnet-1-hez
A vnet-1 és a vnet-2 közötti társviszony létesítéséhez a szolgáltatásnév appId azonosítójával és jelszavával jelentkezzen be az 1. előfizetéshez társított Microsoft Entra ID-bérlőbe.
Szerezze be az spn-1-peer-vnet és az spn-2-peer-vnet appId azonosítóját
A cikk alkalmazásában jelentkezzen be az egyes előfizetésekbe, és szerezze be az egyes spN-k alkalmazásazonosítóját és az egyes virtuális hálózatok erőforrás-azonosítóját. Ezekkel az értékekkel a későbbi lépésekben bejelentkezhet az egyszerű szolgáltatásnévvel rendelkező előfizetésekbe. Ezek a lépések nem szükségesek a virtuális hálózatok közötti társviszonyhoz, ha mindkét fél rendelkezik már az egyszerű szolgáltatásnevekkel és a virtuális hálózatok erőforrás-azonosítójával.
Az az login használatával jelentkezzen be az 1. előfizetésbe egy normál felhasználói fiókkal.
az login
Az az network vnet show használatával szerezze be a vnet-1 erőforrás-azonosítóját egy változóba a későbbi lépésekben való használathoz.
vnetid1=$(az network vnet show \ --resource-group test-rg-1 \ --name vnet-1 \ --query id \ --output tsv)
Az az ad sp listával szerezze be az spn-1-peer-vnet appId azonosítóját, és helyezzen egy változóba a későbbi lépésekben való használatra.
appid1=$(az ad sp list \ --display-name spn-1-peer-vnet \ --query [].appId \ --output tsv)
Az az login használatával jelentkezzen be a 2. előfizetésbe egy normál felhasználói fiókkal.
az login
Az az network vnet show használatával szerezze be a vnet-2 erőforrás-azonosítóját egy változóba a későbbi lépésekben való használathoz.
vnetid2=$(az network vnet show \ --resource-group test-rg-2 \ --name vnet-2 \ --query id \ --output tsv)
Az az ad sp listával szerezze be az spn-2-peer-vnet appId azonosítóját, és helyezzen egy változóba a későbbi lépésekben való használatra.
appid2=$(az ad sp list \ --display-name spn-2-peer-vnet \ --query [].appId \ --output tsv) echo $appid2
Az az logout használatával jelentkezzen ki az Azure CLI-munkamenetből az alábbi paranccsal. Ne zárja be a terminált.
az logout
Társviszony-létesítés a virtuális hálózatokkal
Az az login használatával jelentkezzen be az 1. előfizetésbe spn-1-peer-vnet használatával. A parancs végrehajtásához az 1. előfizetéshez társított Microsoft Entra-azonosító bérlőazonosítójára van szüksége. A jelszó változó helyőrzővel jelenik meg a példában. Cserélje le az erőforrás létrehozása során feljegyzett jelszóra. Cserélje le a helyőrzőt
--tenant
az 1. előfizetéshez társított Microsoft Entra ID-bérlő bérlőazonosítójára.az login \ --service-principal \ --username $appid1 \ --password $password \ --tenant c2d26d12-71cc-4f3b-8557-1fa18d077698
Az az login használatával jelentkezzen be a 2. előfizetésbe spn-2-peer-vnet használatával. A parancs végrehajtásához a 2. előfizetéshez társított Microsoft Entra ID-bérlő bérlőazonosítójára van szüksége. A jelszó változó helyőrzővel jelenik meg a példában. Cserélje le az erőforrás létrehozása során feljegyzett jelszóra. Cserélje le a helyőrzőt
--tenant
a 2. előfizetéshez társított Microsoft Entra ID-bérlő bérlőazonosítójára.az login \ --service-principal \ --username $appid2 \ --password $password \ --tenant 24baaf57-f30d-4fba-a20e-822030f7eba3
Az az account set használatával módosítsa a környezetet az 1- előfizetésre.
az account set --subscription "subscription-1-subscription-id-NOT-ENTRA-TENANT-ID"
Az az network vnet peering create használatával hozza létre a virtuális hálózatok közötti társviszonyt a vnet-1 és a vnet-2 között.
az network vnet peering create \ --name vnet-1-to-vnet-2 \ --resource-group test-rg-1 \ --vnet-name vnet-1 \ --remote-vnet $vnetid2 \ --allow-vnet-access
Az az network vnet peering listával ellenőrizze a virtuális hálózatok közötti társviszonyt a vnet-1 és a vnet-2 között.
az network vnet peering list \ --resource-group test-rg-1 \ --vnet-name vnet-1 \ --output table
Az az account set használatával módosítsa a környezetet a 2. előfizetésre.
az account set --subscription "subscription-2-subscription-id-NOT-ENTRA-TENANT-ID"
Az az network vnet peering create használatával hozza létre a virtuális hálózatok közötti társviszonyt a vnet-2 és a vnet-1 között.
az network vnet peering create \ --name vnet-2-to-vnet-1 \ --resource-group test-rg-2 \ --vnet-name vnet-2 \ --remote-vnet $vnetid1 \ --allow-vnet-access
Az az network vnet peering listával ellenőrizze a virtuális hálózatok közötti társviszonyt a vnet-2 és a vnet-1 között.
az network vnet peering list \ --resource-group test-rg-2 \ --vnet-name vnet-2 \ --output table
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: