Share via


Oktatóanyag: Azure Cosmos DB-hitelesítő adatok tárolása és használata az Azure Key Vault

A KÖVETKEZŐKRE VONATKOZIK: Nosql MongoDB Cassandra Gremlin Táblázat

Fontos

Javasoljuk, hogy az Azure Cosmos DB-hez egy rendszer által hozzárendelt felügyelt identitást használjon. Ha a felügyelt identitáskezelési megoldás és a tanúsítványalapú megoldás sem felel meg az igényeinek, használja az Ebben a cikkben található Azure Key Vault-megoldást.

Ha az Azure Cosmos DB-t használja adatbázisként, az adatbázisokhoz, tárolókhoz és elemekhez egy SDK-val, az API-végponttal és az elsődleges vagy másodlagos kulccsal csatlakozhat.

Nem ajánlott a végpont URI-ját és a bizalmas írási-olvasási kulcsokat közvetlenül az alkalmazáskódban vagy a konfigurációs fájlban tárolni. Ideális esetben ezek az adatok a gazdagép környezeti változóiból származnak. Az Azure App Service alkalmazásbeállítások lehetővé teszik futtatókörnyezeti hitelesítő adatok beszúrását az Azure Cosmos DB-fiókhoz anélkül, hogy a fejlesztőknek nem biztonságos, világos szöveges módon kellene tárolniuk ezeket a hitelesítő adatokat.

Az Azure Key Vault tovább folytatja ezt az ajánlott eljárást, mivel lehetővé teszi a hitelesítő adatok biztonságos tárolását, miközben olyan szolgáltatásokat biztosít, mint Azure App Service felügyelt hozzáférés a hitelesítő adatokhoz. Azure App Service biztonságosan beolvassa a hitelesítő adatokat az Azure Key Vault-ből, és beszúrja ezeket a hitelesítő adatokat a futó alkalmazásba.

Ezzel az ajánlott eljárással a fejlesztők tárolhatják a hitelesítő adatokat olyan eszközökhöz, mint az Azure Cosmos DB emulátor , vagy ingyenesen kipróbálhatják az Azure Cosmos DB-t a fejlesztés során. Ezután az üzemeltetési csapat biztosíthatja, hogy a megfelelő éles beállításokat a futtatókörnyezetbe injektálja.

Eben az oktatóanyagban az alábbiakkal fog megismerkedni:

  • Azure Key Vault-példány létrehozása
  • Azure Cosmos DB hitelesítő adatok hozzáadása titkos kulcsként a kulcstartóhoz
  • Hozzon létre és regisztráljon egy Azure App Service erőforrást, és adjon meg "olvasási kulcs" engedélyeket
  • Kulcstartó titkos kulcsainak injektálása a App Service erőforrásba

Megjegyzés

Ez az oktatóanyag és a mintaalkalmazás egy Azure Cosmos DB for NoSQL-fiókot használ. Ugyanezeket a lépéseket számos más API-kkal is elvégezheti.

Előfeltételek

Kezdés előtt: Azure Cosmos DB hitelesítő adatainak lekérése

A kezdés előtt lekérheti a meglévő fiókjához tartozó hitelesítő adatokat.

  1. Lépjen a meglévő Azure Cosmos DB for NoSQL-fiók Azure Portal lapjára.

  2. Az Azure Cosmos DB for NoSQL-fiók oldalán válassza a Kulcsok navigációs menüt.

    Képernyőkép egy Azure Cosmos DB SQL API-fiók oldaláról. A navigációs menüben a Kulcsok lehetőség van kiemelve.

  3. Jegyezze fel az URI és AZ ELSŐDLEGES KULCS mezők értékeit. Ezeket az értékeket az oktatóanyag későbbi részében fogja használni.

    Képernyőkép egy Azure Cosmos DB SQL API-fiók különböző hitelesítő adataival rendelkező Kulcsok lapról.

Azure Key Vault-erőforrás létrehozása

Először hozzon létre egy új kulcstartót a NoSQL-hitelesítő API tárolásához.

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza az Erőforrás > létrehozása Biztonsági > Key Vault lehetőséget.

  3. A Kulcstartó létrehozása lapon adja meg a következő adatokat:

    Beállítás Leírás
    Előfizetés Válassza ki az Azure Cosmos-fiókhoz használni kívánt Azure-előfizetést.
    Erőforráscsoport Válasszon ki egy erőforráscsoportot, vagy válassza az Új létrehozása lehetőséget, majd adjon meg egy egyedi nevet az új erőforráscsoportnak.
    Key Vault neve Adjon meg egy globálisan egyedi nevet a kulcstartónak.
    Régió Válassza ki az Azure Cosmos DB-fiókot üzemeltetéséhez használni kívánt földrajzi helyet. Használja a felhasználókhoz legközelebbi helyet, hogy a lehető leggyorsabb hozzáférést biztosítsa számukra az adatokhoz.
    Tarifacsomag Válassza a Standard lehetőséget.
  4. Hagyja meg a többi beállítást az alapértelmezett értékükön.

  5. Válassza az Áttekintés + létrehozás lehetőséget.

  6. Tekintse át a megadott beállításokat, majd válassza a Létrehozás lehetőséget. A fiók létrehozása néhány percet vesz igénybe. Mielőtt továbblépne, várja meg, amíg a portállap megjelenik Az üzembe helyezés befejeződött .

Azure Cosmos DB hozzáférési kulcsok hozzáadása a Key Vault

Most tárolja az Azure Cosmos DB hitelesítő adatait titkos kulcsként a kulcstartóban.

  1. Válassza az Erőforrás megnyitása lehetőséget az Azure Key Vault erőforráslapjának megtekintéséhez.

  2. Az Azure Key Vault erőforrás oldalán válassza a Titkos kódok navigációs menüt.

  3. Válassza a Létrehozás/importálás lehetőséget a menüből.

    Képernyőkép a Kulcstartó menü Létrehozás/importálás lehetőségéről.

  4. A Titkos kód létrehozása lapon adja meg a következő információkat:

    Beállítás Leírás
    Feltöltési beállítások Kézi
    Név cosmos-endpoint
    Titkos kód értéke Adja meg az oktatóanyag korábbi részében másolt URI-t .

    Képernyőkép a titkos kód létrehozása párbeszédpanelről a Azure Portal egy URI-titkos kód részleteivel.

  5. Válassza a Létrehozás lehetőséget az új cosmos-endpoint titkos kód létrehozásához.

  6. Válassza ismét a Létrehozás/importálás lehetőséget a menüből. A Titkos kód létrehozása lapon adja meg a következő információkat:

    Beállítás Leírás
    Feltöltési beállítások Kézi
    Név cosmos-readwrite-key
    Titkos kód értéke Adja meg az oktatóanyag korábbi részében másolt ELSŐDLEGES KULCSOT .

    Képernyőkép a titkos kód létrehozása párbeszédpanelről a Azure Portal az ELSŐDLEGES KULCS titkos kulcsának részleteivel.

  7. Válassza a Létrehozás lehetőséget az új cosmos-readwrite-key titkos kód létrehozásához.

  8. A titkos kódok létrehozása után tekintse meg őket a titkos kódok listájában a Titkos kódok lapon.

    Képernyőkép a kulcstartó titkos kulcsainak listájáról.

  9. Jelölje ki az egyes kulcsokat, válassza ki a legújabb verziót, majd másolja ki a titkos kód azonosítót. Az oktatóanyag későbbi részében a cosmos-endpoint és a cosmos-readwrite-key titkos kód azonosítóját fogja használni.

    Tipp

    A titkos kód azonosítója ebben a formátumban https://<key-vault-name>.vault.azure.net/secrets/<secret-name>/<version-id>lesz. Ha például a kulcstartó neve msdocs-key-vault, a kulcs neve cosmos-readwrite-key, és a verzió, ha 83b995e363d947999ac6cf487ae0e12e; akkor a titkos azonosító a következő lesz https://msdocs-key-vault.vault.azure.net/secrets/cosmos-readwrite-key/83b995e363d947999ac6cf487ae0e12e: .

    Képernyőkép egy cosmos-readwrite-key nevű kulcstartó-titkos kulcs titkos azonosítóról.

Azure-webalkalmazás létrehozása és regisztrálása az Azure Key Vault

Ebben a szakaszban hozzon létre egy új Azure-webalkalmazást, helyezzen üzembe egy mintaalkalmazást, majd regisztrálja a webalkalmazás felügyelt identitását az Azure Key Vault.

  1. Hozzon létre egy új GitHub-adattárat a cosmos-db-nosql-dotnet-sample-web-environment-variables sablonnal.

  2. A Azure Portal válassza az Erőforrás > létrehozása Web Web > App lehetőséget.

  3. A Webalkalmazás létrehozása lapon és az Alapvető beállítások lapon adja meg a következő adatokat:

    Beállítás Leírás
    Előfizetés Válassza ki az Azure Cosmos-fiókhoz használni kívánt Azure-előfizetést.
    Erőforráscsoport Válasszon ki egy erőforráscsoportot, vagy válassza az Új létrehozása lehetőséget, majd adjon meg egy egyedi nevet az új erőforráscsoportnak.
    Név Adjon meg egy globálisan egyedi nevet a webalkalmazásnak.
    Közzététel Válassza a Kód lehetőséget.
    Futtatókörnyezet verme Válassza a .NET 6 (LTS) lehetőséget.
    Operációs rendszer Válassza a Windows lehetőséget.
    Régió Válassza ki az Azure Cosmos DB-fiókot üzemeltetéséhez használni kívánt földrajzi helyet. Használja a felhasználókhoz legközelebbi helyet, hogy a lehető leggyorsabb hozzáférést biztosítsa számukra az adatokhoz.
  4. A többi beállításnál hagyja meg az alapértelmezett értékeket.

  5. Válassza a Tovább: Üzembe helyezés lehetőséget.

  6. Az Üzembe helyezés lapon adja meg a következő adatokat:

    Beállítás Leírás
    Folyamatos üzembe helyezés Válassza az Engedélyezés lehetőséget.
    GitHub-fiók Válassza az Engedélyezés lehetőséget. Kövesse a GitHub-fiók engedélyezési kéréseit, hogy engedélyt adjon az Azure-nak az újonnan létrehozott GitHub-adattár olvasásához.
    Szervezet Válassza ki az új GitHub-adattár szervezetét.
    Adattár Válassza ki az új GitHub-adattár nevét.
    Ág Válassza a fő lehetőséget.
  7. Válassza az Áttekintés + létrehozás lehetőséget.

  8. Tekintse át a megadott beállításokat, majd válassza a Létrehozás lehetőséget. A fiók létrehozása eltarthat néhány percig. Mielőtt továbblépne, várja meg, amíg a portáloldal megjelenik : Az üzembe helyezés befejeződött .

  9. Előfordulhat, hogy várnia kell néhány további percet, amíg a webalkalmazás először üzembe lesz helyezve a webalkalmazásban. Az Azure Web App erőforráslapján válassza a Tallózás lehetőséget az alkalmazás alapértelmezett állapotának megtekintéséhez.

    Képernyőkép a webalkalmazás alapértelmezett állapotáról hitelesítő adatok nélkül.

  10. Válassza az Identitás navigációs menüt.

  11. Az Identitás lapon válassza a Be lehetőséget a Rendszer által hozzárendelt felügyelt identitás területen, majd válassza a Mentés lehetőséget.

    Képernyőkép a rendszer által hozzárendelt felügyelt identitás engedélyezéséről az Identitás lapon.

Azure Key Vault titkos kulcsok injektálása Az Azure Web App alkalmazásbeállításaiként

Végül szúrja be a kulcstartóban tárolt titkos kulcsokat alkalmazásbeállításokként a webalkalmazásban. Az alkalmazásbeállítások azonban futásidőben beszúrják a hitelesítő adatokat az alkalmazásba anélkül, hogy a hitelesítő adatokat tiszta szövegben tárolják.

  1. Térjen vissza a key vault lapjára a Azure Portal. A navigációs menüben válassza a Hozzáférési szabályzatok lehetőséget.

  2. A Hozzáférési szabályzatok lapon válassza a Létrehozás lehetőséget a menüből.

    Képernyőkép a Létrehozás lehetőségről a Hozzáférési szabályzatok menüben.

  3. A Hozzáférési szabályzat létrehozása lap Engedélyek lapján válassza a Titkos engedélyek szakaszban a Beolvasás lehetőséget. Kattintson a Tovább gombra.

    Képernyőkép a Titkos engedélyekhez engedélyezve van az Engedély lekérése lehetőségről.

  4. Az Egyszerű lapon válassza ki az oktatóanyag korábbi részében létrehozott webalkalmazás nevét. Kattintson a Tovább gombra.

    Képernyőkép egy webalkalmazás engedélyhez rendelt felügyelt identitásáról.

    Megjegyzés

    Ebben a példában a képernyőképen a webalkalmazás neve msdocs-dotnet-web.

  5. Válassza ismét a Tovább gombot az Alkalmazás lap kihagyásához. A Felülvizsgálat + létrehozás lapon tekintse át a megadott beállításokat, majd válassza a Létrehozás lehetőséget.

  6. Térjen vissza a webalkalmazás lapjára a Azure Portal. A navigációs menüben válassza a Konfiguráció lehetőséget.

  7. A Konfiguráció lapon válassza az Új alkalmazásbeállítás lehetőséget. Az Alkalmazás hozzáadása/szerkesztése párbeszédpanelen adja meg a következő adatokat:

    Beállítás Leírás
    Név CREDENTIALS__ENDPOINT
    Kulcs Kérje le az oktatóanyag korábbi részében létrehozott kulcstartóban található cosmos-endpoint titkos kód titkos azonosítóját. Adja meg az azonosítót a következő formátumban: @Microsoft.KeyVault(SecretUri=<secret-identifier>).

    Tipp

    Győződjön meg arról, hogy a környezeti változó dupla aláhúzásjel (__) értékkel rendelkezik egyetlen aláhúzásjel helyett. A dupla aláhúzásjel egy kulcs deliméter, amelyet a .NET minden platformon támogat. További információ: Környezeti változók konfigurálása.

    Megjegyzés

    Ha például a titkos azonosító https://msdocs-key-vault.vault.azure.net/secrets/cosmos-endpoint/69621c59ef5b4b7294b5def118921b07, akkor a hivatkozás a következő lesz @Microsoft.KeyVault(SecretUri=https://msdocs-key-vault.vault.azure.net/secrets/cosmos-endpoint/69621c59ef5b4b7294b5def118921b07): .

    Képernyőkép az Alkalmazás hozzáadása/szerkesztése párbeszédpanelről egy új alkalmazásbeállítással, amely egy kulcstartó titkos kódjára hivatkozik.

  8. Az új alkalmazásbeállítás megőrzéséhez válassza az OK gombot

  9. Válassza ismét az Új alkalmazásbeállítás lehetőséget . Az Alkalmazás hozzáadása/szerkesztése párbeszédpanelen adja meg a következő adatokat, majd kattintson az OK gombra:

    Beállítás Leírás
    Név CREDENTIALS__KEY
    Kulcs Kérje le a cosmos-readwrite-key titkos kód titkos azonosítóját az oktatóanyag korábbi részében létrehozott kulcstartóban. Adja meg az azonosítót a következő formátumban: @Microsoft.KeyVault(SecretUri=<secret-identifier>).
  10. A Konfiguráció lapra visszatérve válassza a Mentés lehetőséget a webalkalmazás alkalmazásbeállításainak frissítéséhez.

    Képernyőkép a Konfiguráció lap menüjének Mentés lehetőségéről.

  11. Várjon néhány percet, amíg a webalkalmazás újraindul az új alkalmazásbeállításokkal. Ezen a ponton az új alkalmazásbeállításoknak azt kell jelezniük, hogy kulcstartó-referenciaként szolgálnak.

    Képernyőkép a Key Vault-referencia megjelöléséről egy webalkalmazás két alkalmazásbeállításán.

  12. A navigációs menüben válassza az Áttekintés lehetőséget. Válassza a Tallózás lehetőséget az alkalmazás kitöltött hitelesítő adatokkal való megtekintéséhez.

    Képernyőkép a webalkalmazásról érvényes Azure Cosmos DB for NoSQL-fiók hitelesítő adataival.

Következő lépések