Alkalmazáshitelesítés konfigurálása a Microsoft Planetary Computer Pro-hoz

Ez a cikk részletes útmutatást nyújt a fejlesztők és rendszergazdák számára a biztonságos alkalmazáshitelesítés beállításához és a Microsoft Planetary Computer Pro-hoz való hozzáféréshez. A Microsoft Entra ID és a felügyelt identitások alkalmazásával az alkalmazások zökkenőmentesen hitelesíthetők a hitelesítő adatok kezelése nélkül, biztosítva a Planetary Computer Pro-erőforrásokkal való biztonságos interakciót. Függetlenül attól, hogy az alkalmazás Az Azure-ban vagy más környezetekben fut-e, ez az útmutató ismerteti a biztonságos hozzáférés engedélyezéséhez szükséges konfigurációkat, beleértve a szerepköralapú hozzáférés-vezérlést (RBAC) és a jogkivonatok beszerzését.

Megjegyzés:

Az Azure AD B2C-t vagy a Microsoft Entra külső azonosítót támogató funkciók, például a közösségi identitásszolgáltatók esetében az alkalmazásoknak továbbra is ezeket az identitásmegoldásokat kell használniuk a proxyhitelesítési forgalomhoz, mivel a Planetary Computer Pro nem támogatja a Microsoft Entra ID-hitelesítés alternatíváit.

Hitelesítési lehetőségek és javaslatok

Az alábbi táblázat összefoglalja az ajánlott hitelesítési módszert az alkalmazás futási helyétől és az erőforrások elérésének módjától függően:

Alkalmazásüzemeltetési környezet Hozzáférési típus megadása kötelező Ajánlott identitástípus Explanation
Futtatás az Azure-ban (virtuális gép, Alkalmazás Szolgáltatás, Funkciók, Tartály Alkalmazások stb.) App-Only (Az alkalmazás önmagában is működik) Felügyelt identitás (Használó által hozzárendelt – javasolt) Biztonság és kezelhetőség: Nincs szükség a hitelesítő adatok (titkos kulcsok vagy tanúsítványok) kódban vagy konfigurációban való tárolására és kezelésére. Az Azure automatikusan kezeli a hitelesítő adatok rotálását. Az felhasználó által hozzárendelt megosztási módszert részesítsük előnyben több erőforrás között.
Futtatás az Azure-ban (virtuális gép, Alkalmazás Szolgáltatás, Funkciók, Tartály Alkalmazások stb.) Delegált (az alkalmazás egy felhasználó nevében jár el) Felügyelt identitás (Használó által hozzárendelt – javasolt) Kihasználja az Azure-integrációt: Magában az alkalmazásban egyesíti a felügyelt identitás biztonsági előnyeit a szabványos felhasználói hitelesítési folyamatokkal. Leegyszerűsíti az Infrastruktúra beállítását az Azure-ban.
Futtatás az Azure-on kívül (helyszíni, más felhőbeli, fejlesztői gép) App-Only (Az alkalmazás önmagában is működik) Szolgáltatásfelelős Standard külső alkalmazásokhoz: A nem Azure-alkalmazások Microsoft Entra-azonosítóval történő hitelesítésének bevált módszere. A hitelesítő adatok (titkos kulcsok vagy tanúsítványok) biztonságos kezelését igényli.
Futtatás az Azure-on kívül (helyszíni, más felhőbeli, fejlesztői gép) Delegált (az alkalmazás egy felhasználó nevében jár el) Szolgáltatásfelelős Standard külső alkalmazásokhoz: Engedélyezi a szabványos OAuth 2.0-folyamatokat a felhasználói bejelentkezéshez és az Azure-on kívüli alkalmazásokhoz való hozzájáruláshoz az alkalmazás regisztrált identitásának használatával az Entra-azonosítóban.
Azure-on kívüli futtatás (alternatív megoldás) App-Only vagy delegált Felügyelt identitás Azure-előnyöket biztosít: Ha az alkalmazást egy Azure számítási szolgáltatásban (például virtuális gépen vagy tárolóalkalmazásban) üzemelteti, a felügyelt identitások fokozott biztonságát és kezelhetőségét használhatja, elkerülve a hitelesítő adatok kezelését annak ellenére, hogy a forrás nem Azure-nak tekinthető.

Előfeltételek

Az Azure-ban futó alkalmazások

Az Azure-ban futó alkalmazások esetében javasoljuk, hogy hozzon létre egy felhasználó által hozzárendelt felügyelt identitás nevű Microsoft Entra-identitást a GeoCatalog-erőforrás eléréséhez. Az alkalmazások a felügyelt identitások használatával szerezhetik be a Microsoft Entra-jogkivonatokat (lásd a Hozzáférési jogkivonat beszerzése szakaszt a Microsoft Planetary Computer Pro eléréséhez hitelesítő adatok kezelése nélkül. A felügyelt identitásokról és a választható típusról további információt az Azure-erőforrások felügyelt identitásai című témakörben talál. Ha felhasználó által hozzárendelt felügyelt identitásokat szeretne létrehozni az Azure-ban futó alkalmazásához, kövesse a Felügyelt identitások használata az App Service-hez és az Azure Functionshez című témakört.

Az Azure-ban nem futó alkalmazások

Az Azure-ban nem futó, például a helyszínen vagy más felhőszolgáltatókon üzemeltetett alkalmazások esetében javasoljuk, hogy regisztrálja az alkalmazást a Microsoft Entra felügyeleti központban, beleértve egy átirányítási URI-t a biztonsági jogkivonatok fogadásához, hogy megbízhatósági kapcsolatot létesítsen az alkalmazás és a Microsoft identitásplatformja között. Az alkalmazás Microsoft Entra-ban való regisztrálása automatikusan létrehoz egy szolgáltatásnevet az alkalmazáshoz, amelyet később RBAC-szerepkörökhöz rendelhet. Ha az alkalmazás rendelkezik a Microsoft Entra ID-hitelesítés konfigurálására vonatkozó beállítással, ehhez használhatja a regisztrált alkalmazás "Alkalmazás (ügyfél) azonosítóját" és a "Címtár (bérlő) azonosítóját".

Ha nem tudja regisztrálni az alkalmazást a Microsoft Entra-ban a korábban javasolt módon, egy másik lehetőséggel futtathatja az alkalmazást egy Azure-beli virtuális gépen vagy tárolóalkalmazásban. Létrehozhat egy felhasználó által hozzárendelt felügyelt identitást, és hozzárendelheti azt a virtuális géphez (virtuális géphez) vagy tárolóalkalmazáshoz az itt leírtak szerint – Felügyelt identitások konfigurálása Azure-beli virtuális gépeken (virtuális gépeken) és felügyelt identitásokon az Azure Container Appsben. Az alkalmazás bejelentkezhet a felügyelt identitással a GeoCatalog-erőforrás eléréséhez. Ha például az alkalmazás felhasználó által hozzárendelt felügyelt identitással futtat egy virtuális gépen, a következőt használhatja:

!az login  --identity --username <client_id|object_id|resource_id> 

A felügyelt identitás ügyfél-azonosítóját, objektumazonosítóját vagy erőforrás-azonosítóját az Azure Portalon találja. A parancssori felület alternatívájaként a Python-mintakód a Hozzáférési jogkivonat beszerzése a Microsoft Planetary Computer Pro eléréséhez című szakaszban található.

azure.identity.DefaultAzureCredential(managed_identity_client_id=<client_id>)

Miután létrehozott egy felhasználó által hozzárendelt felügyelt identitást vagy szolgáltatásnevet az alkalmazáshoz a korábban ismertetett módon, el kell döntenie az alkalmazás-hozzáférési forgatókönyv típusát: csak alkalmazásalapú hozzáférés, amely csak az alkalmazás saját identitásaként vagy delegált hozzáféréseként működik, és egy bejelentkezett felhasználó nevében jár el.

Csak alkalmazáshoz való hozzáférés

Ebben a hozzáférési forgatókönyvben az alkalmazás önállóan működik, és nincs bejelentkezett felhasználó alapértelmezett viselkedésként. Továbbléphet a Microsoft Planetary Computer Pro RBAC konfigurációs szakaszra az alkalmazásokhoz , hogy a megfelelő szerepköröket rendelje hozzá az alkalmazáshoz.

Delegált hozzáférés

Ebben a hozzáférési forgatókönyvben egy felhasználó bejelentkezett egy ügyfélalkalmazásba. Az ügyfélalkalmazás a felhasználó nevében fér hozzá az erőforráshoz. Győződjön meg arról, hogy az alkalmazás felhasználói megfelelő RBAC-szerepköröket kapnak a Felhasználók létrehozása és kezelése szakaszban leírtak szerint. Az alkalmazás API-engedélyeit delegált engedélyekkel is konfigurálnia kell az alábbi lépések végrehajtásával:

  1. Bejelentkezés a Microsoft Entra Felügyeleti központba
  2. Keresse meg azIdentitásalkalmazások>>alkalmazásregisztrációit, majd válassza ki az ügyfélalkalmazást
  3. A Kezelés területen válassza ki az API-engedélyeket
  4. Válassza az Engedély hozzáadása lehetőséget
  5. Válassza ki a szervezet által használt API-kat
  6. Írja be az Azure Orbital Planetary Computer kifejezést a keresőmezőbe
  7. Válassza ki a megfelelő bejegyzést (az alkalmazásazonosító 6388acc4-795e-43a9-a320-33075c1eb83b legyen). Azure Orbital Microsoft Planetary Computer Pro néven jelenik meg.
  8. Válassza a Delegált engedélyek párbeszédpanelt. Jelölje be a user_impersonation melletti jelölőnégyzetet.
  9. Válassza Engedélyek hozzáadása
  10. Válassza a "Rendszergazdai hozzájárulás megadása" hivatkozást (feltéve, hogy a szándéka az, hogy rendszergazdai hozzájárulást adjon a bérlőben ehhez az engedélyhez)

A delegált hitelesítési minta a QGIS-ből való csatlakozáskor is használható.

Microsoft Planetary Computer Pro RBAC-konfiguráció alkalmazásokhoz

Miután létrehozott egy felügyelt identitást egy Azure-ban futó alkalmazáshoz, vagy egy szolgáltatásnévhez, amely nem az Azure-ban fut, de regisztrálva van a Microsoft Entrában, megfelelő engedélyeket kell adnia az identitásoknak a GeoCatalog-erőforrás RBAC-konfiguráción keresztüli eléréséhez.

Az alábbiakban egy részletes példa látható, amely bemutatja, hogyan konfigurálható Role-Based hozzáférés-vezérlés (RBAC) a "GeoCatalog-rendszergazda" szerepkör hozzárendeléséhez egy alkalmazás felhasználó által hozzárendelt felügyelt identitásához. Az Azure Portalon ugyanezeket a lépéseket követve konfigurálhatja az RBAC-t az alkalmazás szolgáltatásnévéhez.

  1. Az Azure Portalon lépjen a Microsoft Planetary Computer Pro erőforrás IAM lapjára a bal oldalon.

    Képernyőkép az Azure Portal IAM paneljéről az RBAC konfigurálásához.

  2. Válassza a Szerepkör-hozzárendelés hozzáadása lehetőséget, majd válassza a GeoCatalog-rendszergazda lehetőséget a "Feladatfüggvény-szerepkörök" területen

    Képernyőkép a szerepkör-hozzárendelés kiválasztásáról az Azure Portalon.

  3. Válassza a Tovább gombot, majd a felügyelt identitás választógombját

    Képernyőkép a felügyelt identitás kiválasztásáról az Azure Portalon.

  4. Válassza ki a Tagok kijelölése lehetőséget, és válassza ki az előfizetést és a felhasználó által hozzárendelt felügyelt identitást a felügyelt identitások kiválasztása panelen a jobb oldalon.

    Képernyőkép az Azure Portal kijelölt tagok paneljéről.

  5. Válassza a Tovább lehetőséget az információk ellenőrzéséhez és a felülvizsgálat befejezéséhez + hozzárendeléshez.

Hozzáférési jogkivonat beszerzése a Microsoft Planetary Computer Pro eléréséhez

Miután konfigurálta az RBAC-t, hogy megfelelő engedélyeket adjon az alkalmazásnak, az alkalmazásnak be kell szereznie egy hozzáférési jogkivonatot a kérelmek hitelesítéséhez. Python-mintakód az alábbi:

import azure.identity
credential = azure.identity.DefaultAzureCredential()
token = credential.get_token("https://geocatalog.spatio.azure.com/")
headers = {"Authorization": f"Bearer {token.token}"} 

Megjegyzés:

Ha az alkalmazáshoz több felügyelt identitás van hozzárendelve, explicit módon át kell adnia a megfelelőt: azure.identity.DefaultAzureCredential(managed_identity_client_id=<client_id>). Az Azure portálon másik lehetőségként úgy konfigurálhatja az alkalmazás környezeti változóit, hogy hozzáadja "AZURE_CLIENT_ID" a megfelelő felügyelt identitás ügyfélazonosítójával.

Megjegyzés:

Az elvárt felhasználói hitelesítési viselkedés alapján hozzáadhatja a .default vagy a user_impersonation hatókört a credential.get_token()-hez.

Megjegyzés:

Ha a webalkalmazás esetében módosítja a kódot vagy az alkalmazás konfigurációját, zárja be és nyissa meg újra a webböngészőt, hogy elkerülje a gyorsítótárazott hitelesítő adatok használatát.

A hozzáférési jogkivonatokról további információt a Microsoft identitásplatformjának Hozzáférési jogkivonatai című témakörben talál. Ha a DefaultAzureCredentials() meghívásával szerez hozzáférési jogkivonatokat, a hitelesítőadat-példány eltárolja a megszerzett jogkivonatokat a gyorsítótárban. A token élettartama és frissítése automatikusan történik. Átadhatja a DefaultAzureCredential-példányt, és meghívhatja GetToken() vagy GetTokenAsync() közvetlenül azelőtt, hogy jogkivonatra van szüksége, hogy mindig megkapja a még nem lejárt jogkivonatot. Ha hosszú, nyitott munkamenetet kell fenntartania, a hibakezelőben kezelheti a jogkivonatok lejáratát, hogy elkapja a kivételt, és új jogkivonatot szerezzen be.

Ha nem tudja használni DefaultAzureCredentials() módszert, és ehelyett más módszereket, például AzureCliCredential() használ hozzáférési jogkivonatok beszerzésére, akkor kezelnie kell a jogkivonat élettartamát és frissítését. További információt a Konfigurálható jogkivonatok élettartama a Microsoft identitásplatformon és a Frissítési jogkivonatok a Microsoft identitásplatformon című témakörben talál.

Következő lépések