Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure Developer CLI (azd) támogatja az Azure Key Vault titkos kulcsokra való hivatkozását a projektkörnyezetben (a fájlban .env ). Ez biztonságos lehetőséget biztosít a projektek bizalmas adatainak azd kezeléséhez. Ezek a titkos kódok különböző azd funkciókkal integrálhatók, például horgokkal és CI/CD-folyamatkonfigurációkkal.
Előfeltételek
- Az Azure Developer CLI telepítve van.
- Egy Azure Key Vault-példány , amelyhez hozzáféréssel rendelkezik, vagy egy létrehozásához szükséges engedélyekkel rendelkezik.
Key Vault-titkos kulcs beállítása
Key Vault-titkos kulcs beállításához futtassa a azd env set-secret <name> parancsot, amelyben <name> a kulcs a Key Vault titkos kulcsára hivatkozik. A titkos kód azd beállítása után az alábbi forgatókönyvekben automatikusan lekéri az értéket a Key Vaultból.
Bicep-paraméterek
Ha Bicep-paramétert szeretne társítani egy Azure Key Vault-titkos kód értékéhez, kövesse az alábbi lépéseket:
- A Bicep paramétert a kulcsszóval
@secure()védettként jegyzetelje. - Hozzon létre egy leképezést a
main.parameters.jsonfájlban, amely a Bicep paramétert az Azure Key Vault titkos kódjára hivatkozó környezetben lévő megfelelő kulcsnévhez kapcsolja.
Megjegyzés:
A környezeti titkok jelenleg nem támogatottak Bicep paraméterfájlok (.bicepparam) használatakor.
Example
azd Egy projektben futtassa azd env set-secret MY_SECRET és kövesse az utasításokat egy meglévő Azure Key Vault-titkos kód kiválasztásához, vagy hozzon létre egy újat. A parancs befejeződése után a kulcs MY_SECRET egy Key Vault-titkos kódra mutató hivatkozást tartalmaz. Adja hozzá vagy válassza ki azt a Bicep-paramétert, amellyel használni szeretné az értéket, és jelölje ki biztonságosként:
@secure()
param secureParameter string
Hozza létre a leképezést a main.parameters.json fájlban:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"secureParameter": {
"value": "${MY_SECRET}"
}
}
}
A következő futtatáskor azd up vagy azd provisionazd a paraméter értékeként az Azure Key Vault titkos kulcsát használja.
Kampók
azd automatikusan lekérheti az Azure Key Vault titkos kulcsokat egy horog futtatásakor. Alapértelmezés szerint, amikor a azd futtat egy horgot, a projektkörnyezetből (a .env fájl) származó összes kulcs-érték pár beállításra kerül a horog környezetében. A Key Vault titkos kulcsokra mutató hivatkozásokat azonban nem oldja fel automatikusan a rendszer a hozzájuk tartozó titkos értékekkel.
A hivatkozások megoldásához kövesse az alábbi lépéseket:
- Hozzon létre egy leképezést a környezet kulcsából egy új kulcsra, ahol a Key Vault titkos kulcsa feloldva van.
- A leképezés létrehozásához használja a
secretshorogdefiníció mezőjét.
Example
azd Egy projektben futtassa azd env set-secret MY_SECRET és kövesse az utasításokat egy meglévő Azure Key Vault-titkos kód kiválasztásához, vagy hozzon létre egy újat. A parancs befejezése után a kulcs MY_SECRET egy Key Vault-titkos kódra hivatkozik. Hozzon létre egy, az operációs rendszerhez megfelelő horogdefiníciót.
hooks:
preprovision:
run: 'echo ".env value: $MY_SECRET \nResolved secret: $SECRET_RESOLVE"'
shell: sh
interactive: true
secrets:
SECRET_RESOLVE: MY_SECRET
A következő futtatáskor azd provisiona preprovision horog lefut, és a következő lépésben MY_SECRETfeloldódikSECRET_RESOLVE.
Folyamatkonfiguráció
azd leegyszerűsíti a folyamatos integráció (CI) beállításának folyamatát az alkalmazáshoz. Akár a GitHubot, akár az Azure DevOpst használja, futtassa azd pipeline config és kövesse az irányított lépéseket a CI/CD konfigurálásához.
Az automatikus konfiguráció azd részeként titkos kulcsokat és változókat hoz létre a CI/CD üzembehelyezési munkafolyamatához. Saját változókat és titkos kulcsokat is meghatározhat a pipeline következő konfigurációval azure.yaml: . A definiált nevek megfelelnek a környezet kulcsainak azd (.env). Ha egy kulcs titkos referenciát tartalmaz (akvs), azd eltérő viselkedést alkalmaz attól függően, hogy változóként vagy titkos kódként adja hozzá:
| Megközelítés | CI/CD tárolt érték | Titkos kulcsok rotálása | A következőkre alkalmas |
|---|---|---|---|
variables |
Key Vault-referencia (akvs://...) |
Automatikus – a folyamat mindig beolvassa a legújabb értéket a Key Vaultból. | Ha a CI/CD szolgáltatási főszereplő rendelkezik Key Vault olvasási hozzáféréssel. |
secrets |
Tényleges titkos kódérték | Manuális – újrafuttatva azd pipeline config forgatás után. |
Ha a Key Vault olvasási hozzáférését nem tudja hozzárendelni a szolgáltatási fő felhasználóhoz. |
Megjegyzés:
Amikor használja variables, azd megpróbál egy olvasási-hozzáférési szerepkört hozzárendelni a CI/CD munkafolyamat által használt szolgáltatási főszereplőhöz. Ha nem rendelkezik megfelelő engedélyekkel a Key Vault olvasási szerepkörének hozzárendeléséhez, a művelet meghiúsul. A secrets használható helyette.
Example
Inicializált azd projektből futtassa azd env set-secret SECURE_KEY és kövesse az utasításokat. A parancs befejeződése azd env get-values után a következő hivatkozás jelenik meg:
SECURE_KEY="akvs://faa080af-c1d8-40ad-9cce-000000000000/vivazqu-kv/SECURE-KEY-kv-secret"
Adja hozzá a SECURE_KEY elemet vagy a variables vagy secrets listához a azure.yaml-ben:
# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-dev/main/schemas/v1.0/azure.yaml.json
name: your-project-name
pipeline:
variables:
- SECURE_KEY
Futtatáskor azd pipeline config, SECURE_KEY CI/CD-változóként van beállítva, amelynek értéke a Kulcstároló referencia. Ha a SECURE_KEY Bicep bemeneti paraméterre vagy horogdefinícióra van megfeleltetve, akkor a azd futásidőben automatikusan megoldja a titkos érték feloldását.