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


Key Vault-értesítések fogadása és megválaszolás az Azure Event Grid használatával

Az Azure Key Vault és az Azure Event Grid integrációja lehetővé teszi a felhasználók értesítését, ha a kulcstartóban tárolt titkos kulcs állapota megváltozott. A funkció áttekintését a Key Vault Event Griddel való monitorozása című témakörben tekintheti meg.

Ez az útmutató bemutatja, hogyan fogadhat Key Vault-értesítéseket az Event Griden keresztül, és hogyan válaszolhat az állapotváltozásokra az Azure Automationen keresztül.

Előfeltételek

Fogalmak

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 kulcsa hamarosan lejár (a lejárati dátum előtt 30 nappal van definiálva), az Event Grid értesítést kap az állapotváltozásról, és HTTP POST-t küld a végpontnak. A webes horog 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 az Azure Portalon:

  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őmező 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. Válassza a Runbookok lehetőséget a Folyamatautomatizálás területen.

  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. Jelölje 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 beérkezett 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 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. Kattintson az OK gombra, majd a Létrehozás gombra.

    Ú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 az Azure Portalon keresztül.

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

    Események lap az Azure Portalon

  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 kell lennie az állapotváltozásokat figyelni kívánt kulcstartónak.

  6. Az eseménytípusokra való szűréshez hagyja bejelölve az összes beállítást (9 ki van jelölve).

  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. Válassza a Kijelölés megerősítése lehetőséget a környezeti panelen.

  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ásakor, és rendelkezik a titkos kulcs ú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 kulcsot. 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ítettek-e egy eseményt. 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 kulcstartóban lévő titkos kód állapotváltozását.

    Metrikák panel: rögzített események ellenőrzé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 Webhooks 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 webhook számára a kulcstartó állapotváltozásának eseményadataival, és hogy a webhook aktiválódott.

    Webhookok lap, Utolsó 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étre lett hozva 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ípusa" 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-beli 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 kulcstartók titkos kulcsainak állapotváltozásainak kereséséhez, 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 kulcsokat, amikor hamarosan lejárnak.

További információ: