Megosztás a következőn keresztül:


Oktatóanyag: Az Azure Cosmos DB hitelesítő adatainak tárolása és használata az Azure Key Vaulttal

A KÖVETKEZŐKRE VONATKOZIK: NoSQL MongoDB Cassandra Gremlin Asztal

Fontos

Az Azure Cosmos DB-hez való hozzáférés ajánlott egy rendszer által hozzárendelt felügyelt identitás használata. Ha a felügyelt identitásmegoldás és a tanúsítványalapú megoldás sem felel meg az igényeinek, használja az Azure Key Vault megoldását ebben a cikkben.

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, valamint az elsődleges vagy másodlagos kulccsal csatlakozhat.

Nem ajánlott közvetlenül az alkalmazás kódjában vagy konfigurációs fájljában tárolni a végponti URI-t és a bizalmas írási-írási kulcsokat. Ideális esetben ezeket az adatokat a gazdagép környezeti változóiból olvassa be. A Azure-alkalmazás Szolgáltatásban az alkalmazásbeállítások lehetővé teszik futtatókörnyezeti hitelesítő adatok injektálásához az Azure Cosmos DB-fiókhoz anélkül, hogy a fejlesztőknek nem biztonságos, egyértelmű 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 azáltal, hogy lehetővé teszi a hitelesítő adatok biztonságos tárolását, miközben olyan szolgáltatásokat biztosít, mint Azure-alkalmazás szolgáltatás által felügyelt hozzáférés a hitelesítő adatokhoz. Azure-alkalmazás szolgáltatás biztonságosan beolvassa a hitelesítő adatokat az Azure Key Vaultbó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 az olyan eszközök hitelesítő adatait, 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 operatív csapat biztosíthatja, hogy futásidőben a megfelelő éles beállítások legyenek injektálva.

Ebben 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
  • Azure-alkalmazás szolgáltatáserőforrás létrehozása és regisztrálása, valamint "olvasási kulcs" engedélyek megadása
  • Kulcstartó titkos kulcsainak injektálása az App Service-erőforrásba

Feljegyzé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

  • Egy meglévő Azure Cosmos DB for NoSQL-fiók.
  • GitHub-fiók.

Mielőtt hozzákezdene: Azure Cosmos DB-hitelesítő adatok 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 oldalára.

  2. Az Azure Cosmos DB for NoSQL-fiók lapjá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 ki van emelve.

  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 az Azure Cosmos DB SQL API-fiókhoz tartozó különböző hitelesítő adatokkal rendelkező Kulcsok lapról.

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

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

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza az Erőforrás > biztonsági > kulcstartó létrehozása 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 adja meg az új erőforráscsoport egyedi nevét.
    Kulcstartó 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özelebb lévő helyet, hogy a lehető leggyorsabb hozzáférést biztosítsa az adatokhoz.
    Tarifacsomag Válassza a Standard lehetőséget.
  4. Hagyja meg a többi beállítást az alapértelmezett értékekre.

  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áloldal megjelenik Az üzembe helyezés befejeződött .

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

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

  1. Válassza az Ugrás az erőforrásra lehetőséget az Azure Key Vault erőforrásoldalának megtekintéséhez.

  2. Az Azure Key Vault erőforráslapjá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ő adatokat:

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

    Képernyőkép az Azure Portal Titkos kulcs létrehozása párbeszédpaneléről egy URI-titkos kód részleteivel.

  5. Válassza a Létrehozás lehetőséget az új cosmos-végpont titkos kódjának 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ő adatokat:

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

    Képernyőkép a Titkos kulcs létrehozása párbeszédpanelről az Azure Portalon 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 kulcsok 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 a titkos azonosítót. Az oktatóanyag későbbi részében a cosmos-endpoint és a cosmos-readwrite-key titkos kulcs azonosítóját fogja használni.

    Tipp.

    A titkos azonosító ebben a formátumban https://<key-vault-name>.vault.azure.net/secrets/<secret-name>/<version-id>van. Ha például a kulcstartó neve msdocs-key-vault, a kulcs neve cosmos-readwrite-key, a verzió pedig aaaaaaaa-0b0b-1c1c-2d2d-333333333333; akkor a titkos azonosítóhttps://msdocs-key-vault.vault.azure.net/secrets/cosmos-readwrite-key/aaaaaaaa-0b0b-1c1c-2d2d-333333333333:

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

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

Ebben a szakaszban hozzon létre egy új Azure Web App-alkalmazást, telepítsen egy mintaalkalmazást, majd regisztrálja a webalkalmazás felügyelt identitását az Azure Key Vaultban.

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

  2. Az Azure Portalon válassza az Erőforrás > webalkalmazás >létrehozása lehetőséget.

  3. A Webalkalmazás létrehozása lap és az Alapszintű beállítások lapon adja meg a következő információkat:

    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 adja meg az új erőforráscsoport egyedi nevét.
    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örnyezeti verem 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özelebb lévő helyet, hogy a lehető leggyorsabb hozzáférést biztosítsa az adatokhoz.
  4. Hagyja meg a többi beállítást az alapértelmezett értékekre.

  5. Válassza a Következő: Ü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 ki 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, és adjon engedélyt 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 ki a fő elemet.
  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 néhány percet vesz igénybe. 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 percet, amíg a webalkalmazást először üzembe helyezik 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áshoz, majd válassza a Mentés lehetőséget.

    Képernyőkép arról, hogy a rendszer által hozzárendelt felügyelt identitás engedélyezve van az Identitás lapon.

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

Végül adja meg a kulcstartóban tárolt titkos kulcsokat alkalmazásbeállításokként a webalkalmazásban. Az alkalmazás beállításai 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 oldalához az Azure Portalon. Válassza ki az Access-szabályzatokat a navigációs menüből.

  2. Az Access szabályzatok lapján válassza a Létrehozás lehetőséget a menüből.

    Képernyőkép az Access-szabályzatok menü Létrehozás lehetőségéről.

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

    Képernyőkép a Titkos kódok engedélyeinek beolvasása engedélyről.

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

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

    Feljegyzés

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

  5. Az Alkalmazás lap kihagyásához kattintson ismét a Tovább gombra. A Véleményezés + 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 az Azure Portalon. Válassza a Konfiguráció lehetőséget a navigációs menüben.

  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 Az oktatóanyag korábbi részében létrehozott kulcstartóban kérje le a 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ás (__) értékkel rendelkezik egyetlen aláhúzásjel helyett. A dupla aláhúzás a .NET által támogatott kulcselválasztó minden platformon. További információkért lásd a környezeti változók konfigurációját.

    Feljegyzés

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

    Képernyőkép az Alkalmazásbeállítás hozzáadása/szerkesztése párbeszédpanelről egy új alkalmazásbeállítással, amely egy kulcstartó titkos kulcsá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ás beállítást . 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 Az oktatóanyag korábbi részében létrehozott kulcstartóban kérje le a cosmos-readwrite-key titkos kód titkos azonosítóját. Adja meg az azonosítót a következő formátumban: @Microsoft.KeyVault(SecretUri=<secret-identifier>).
  10. A Konfiguráció lapon 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 Mentés lehetőségről a Konfiguráció lap menüjében.

  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 key vault-referenciaként szolgálnak.

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

  12. Válassza az Áttekintés lehetőséget a navigációs menüből. A Tallózás gombra kattintva megtekintheti az alkalmazást a kitöltött hitelesítő adatokkal.

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

Következő lépések