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


Key Vault-értesítések fogadása és megválaszolás a Azure Event Grid

Az Azure Key Vault integrációja Azure Event Grid lehetővé teszi a felhasználói értesítéseket, ha a kulcstartóban tárolt titkos kulcs állapota megváltozott. A funkció áttekintését lásd: Monitorozási Key Vault az Event Griddel.

Ez az útmutató azt ismerteti, hogyan fogadhat Key Vault értesítéseket az Event Griden keresztül, és hogyan reagálhat az állapotváltozásokra Azure Automation keresztül.

Előfeltételek

Alapelvek

Az Event Grid a felhő eseményszolgáltatása. Az útmutató lépéseit követve előfizethet a Key Vault eseményeire, és átirányíthatja az eseményeket az Automationbe. Ha a kulcstartó egyik titkos kódja hamarosan lejár (a lejárat dátuma előtt 30 nappal van meghatározva), az Event Grid értesítést kap az állapotváltozásról, és HTTP POST-t küld a végpontnak. A webhook ezután elindítja egy PowerShell-szkript Automation-végrehajtását.

HTTP POST folyamatábra

Automation-fiók létrehozása

Automation-fiók létrehozása a Azure Portal keresztül:

  1. Lépjen portal.azure.com, és jelentkezzen be az előfizetésbe.

  2. A keresőmezőbe írja be az Automation-fiókok kifejezést.

  3. A keresősáv legördülő listájának Szolgáltatások szakaszában válassza az Automation-fiókok lehetőséget.

  4. Válassza a Hozzáadás lehetőséget.

    Automation-fiókok panel

  5. Adja meg a szükséges adatokat az Automation-fiók hozzáadása panelen, majd válassza a Létrehozás lehetőséget.

Runbook létrehozása

Miután elkészült az Automation-fiókja, hozzon létre egy runbookot.

Runbook felhasználói felületének létrehozása

  1. Válassza ki a létrehozott Automation-fiókot.

  2. A Folyamatautomatizálás területen válassza a Runbookok lehetőséget.

  3. Válassza a Runbook létrehozása lehetőséget.

  4. Nevezze el a runbookot, és válassza a PowerShellt runbooktípusként.

  5. Válassza ki a létrehozott runbookot, majd kattintson a Szerkesztés gombra.

  6. Adja meg a következő kódot (tesztelési célokra), és válassza a Közzététel gombot. Ez a művelet a kapott POST-kérelem eredményét adja vissza.

param
(
[Parameter (Mandatory = $false)]
[object] $WebhookData
)

#If runbook was called from Webhook, WebhookData will not be null.
if ($WebhookData) {

#rotate secret:
#generate new secret version in key vault
#update db/service with generated secret

#Write-Output "WebhookData <$WebhookData>"
Write-Output $WebhookData.RequestBody
}
else
{
# Error
write-Error "No input data found." 
}

Runbook felhasználói felületének közzététele

Webhook létrehozása

Hozzon létre egy webhookot az újonnan létrehozott runbook aktiválásához.

  1. A közzétett runbook Erőforrások szakaszában válassza a Webhookok lehetőséget.

  2. Válassza a Webhook hozzáadása lehetőséget.

    Webhook hozzáadása gomb

  3. Válassza az Új webhook létrehozása lehetőséget.

  4. Nevezze el a webhookot, állítson be egy lejárati dátumot, és másolja ki az URL-címet.

    Fontos

    A létrehozás után nem tekintheti meg az URL-címet. Győződjön meg arról, hogy egy másolatot biztonságos helyre ment, ahol az útmutató hátralévő részében hozzáférhet.

  5. Válassza a Paraméterek lehetőséget, és futtassa a beállításokat , majd kattintson az OK gombra. Ne adjon meg paramétereket. A Létrehozás gomb engedélyezve lesz.

  6. Válassza az OK , majd a Létrehozás lehetőséget.

    Új Webhook felhasználói felület létrehozása

Event Grid-előfizetés létrehozása

Event Grid-előfizetés létrehozása a Azure Portal keresztül.

  1. Nyissa meg a kulcstartót, és válassza az Események lapot.

    Események lap a Azure Portal

  2. Válassza az Esemény-előfizetés gombot.

  3. Hozzon létre egy leíró nevet az előfizetéshez.

  4. Válassza az Event Grid-séma lehetőséget.

  5. A témakörerőforrásnak az állapotváltozásokat figyelni kívánt kulcstartónak kell lennie.

  6. A Szűrés eseménytípusokra beállításnál hagyja bejelölve az összes beállítást (9).

  7. A Végpont típusa mezőben válassza a Webhook lehetőséget.

  8. Válassza a Végpont kiválasztása lehetőséget. Az új környezeti panelen illessze be a webhook URL-címét a Webhook létrehozása lépésből az Előfizetői végpont mezőbe.

  9. A környezeti panelen válassza a Kijelölés megerősítése lehetőséget.

  10. Válassza a Létrehozás lehetőséget.

    Esemény-előfizetés létrehozása

Tesztelés és ellenőrzés

Ellenőrizze, hogy az Event Grid-előfizetés megfelelően van-e konfigurálva. Ez a teszt feltételezi, hogy feliratkozott a "Titkos új verzió létrehozva" értesítésre az Event Grid-előfizetés létrehozása területen, és rendelkezik a titkos kulcsok új verziójának kulcstartóban való létrehozásához szükséges engedélyekkel.

Event Grid-előfizetés konfigurációjának tesztelése

Titkos kód létrehozása panel

  1. Lépjen a kulcstartóhoz az Azure Portalon.

  2. Hozzon létre egy új titkos kódot. Tesztelési célokra állítsa a lejárati dátumot a következő napra.

  3. A kulcstartó Események lapján válassza ki a létrehozott Event Grid-előfizetést.

  4. A Metrikák területen ellenőrizze, hogy rögzítve lett-e egy esemény. Két esemény várható: SecretNewVersion és SecretNearExpiry. Ezek az események ellenőrzik, hogy az Event Grid sikeresen rögzítette-e a titkos kód állapotváltozását a kulcstartóban.

    Metrikák panel: rögzített események keresése

  5. Lépjen az Automation-fiókhoz.

  6. Válassza a Runbookok lapot, majd válassza ki a létrehozott runbookot.

  7. Válassza a Webhookok lapot, és győződjön meg arról, hogy az "utolsó aktivált" időbélyeg az új titkos kód létrehozása után 60 másodpercen belül van. Ez az eredmény megerősíti, hogy az Event Grid közzétett egy POST-et a webhookon a kulcstartó állapotváltozásának eseményadataival, és hogy a webhook aktiválva lett.

    Webhookok lap, Legutóbb aktivált időbélyeg

  8. Térjen vissza a runbookhoz, és válassza az Áttekintés lapot.

  9. Tekintse meg a Legutóbbi feladatok listát. Látnia kell, hogy létrejött egy feladat, és hogy az állapot befejeződött. Ez megerősíti, hogy a webhook aktiválta a runbookot a szkript végrehajtásának megkezdéséhez.

    Webhook legutóbbi feladatok listája

  10. Válassza ki a legutóbbi feladatot, és tekintse meg az Event Gridből a webhookra küldött POST kérést. Vizsgálja meg a JSON-t, és győződjön meg arról, hogy a kulcstartó és az eseménytípus paraméterei helyesek. Ha a JSON-objektum "eseménytípus" paramétere megegyezik a kulcstartóban (ebben a példában Microsoft.KeyVault.SecretNearExpiry) történt eseménysel, a teszt sikeres volt.

Hibaelhárítás

Nem hozhat létre esemény-előfizetést

Regisztrálja újra az Event Gridet és a kulcstartó-szolgáltatót az Azure-előfizetés erőforrás-szolgáltatóiban. Lásd: Azure-erőforrás-szolgáltatók és -típusok.

Következő lépések

Gratulálunk! Ha helyesen követte ezeket a lépéseket, készen áll arra, hogy programozott módon reagáljon a kulcstartóban tárolt titkos kulcsok állapotváltozására.

Ha lekérdezésalapú rendszert használ a titkos kulcsok állapotváltozásainak keresésére a kulcstartókban, most már használhatja ezt az értesítési funkciót. A runbookban lévő tesztszkriptet is lecserélheti kódra, hogy programozott módon megújítsa a titkos kódokat, amikor hamarosan lejárnak.

További információ: