Hitelesítési hitelesítő adatok titkos kulcsának használata az Azure Machine Learning-feladatokban

A KÖVETKEZŐKRE VONATKOZIK: Python SDK azure-ai-ml v2 (aktuális)

A hitelesítési adatok, például a felhasználónév és a jelszó titkosak. Ha például egy külső adatbázishoz csatlakozik a betanítási adatok lekérdezéséhez, át kell adnia a felhasználónevet és a jelszót a távoli feladatkörnyezetnek. Az ilyen értékek betanítási szkriptekbe való kódolása nem biztonságos, mivel potenciálisan felfedi a titkos kódot.

Az Azure Key Vault lehetővé teszi a titkos kódok biztonságos tárolását és lekérését. Ebből a cikkből megtudhatja, hogyan kérdezheti le a kulcstartóban tárolt titkos kulcsokat egy számítási fürtön futó betanítási feladatból.

Fontos

Az Azure Machine Learning Python SDK v2 és a gépi tanuláshoz készült Azure CLI-bővítmény nem biztosítja a titkos kulcsok beállításának és lekérésének lehetőségét. Ehelyett a cikkben szereplő információk az Azure Key Vault Secrets Pythonhoz készült ügyfélkódtárát használják.

Előfeltételek

A cikkben ismertetett lépések végrehajtása előtt győződjön meg arról, hogy rendelkezik a következő előfeltételekkel:

Tipp

Az ebben a szakaszban ismertetett előfeltételek közül soknak közreműködői, tulajdonosi vagy azzal egyenértékű hozzáférésre van szüksége az Azure-előfizetéshez vagy az erőforrásokat tartalmazó Azure-erőforráscsoporthoz. Előfordulhat, hogy kapcsolatba kell lépnie az Azure-rendszergazdával, és el kell végeznie ezeket a műveleteket.

  • Azure-előfizetés. Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot. Próbálja ki az Azure Machine Learning ingyenes vagy fizetős verzióját.

  • Egy Azure Machine Learning-munkaterület. Ha még nincs ilyenje, az Erőforrások létrehozása című cikk lépéseit követve hozzon létre egyet.

  • Azure-Key Vault. Ha a munkaterület létrehozásához az Erőforrások létrehozása című cikk segítségével hozta létre a munkaterületet, létre lett hozva egy kulcstartó. Külön key vault-példányt is létrehozhat a Gyorsútmutató: Kulcstartó létrehozása című cikkben található információk alapján.

    Tipp

    Nem kell ugyanazt a kulcstartót használnia, mint a munkaterületet.

  • Felügyelt identitás használatára konfigurált Azure Machine Learning számítási fürt. A fürt konfigurálható rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitáshoz.

  • Adjon hozzáférést a számítási fürt felügyelt identitásának a Key Vaultban tárolt titkos kulcsokhoz. A hozzáférés megadásához használt módszer a kulcstartó konfigurálásának módjától függ:

  • Egy tárolt titkos kódérték a kulcstartóban. Ezt az értéket ezután kulcs használatával lehet lekérni. További információ: Rövid útmutató: Titkos kód beállítása és lekérése az Azure Key Vault.

    Tipp

    A rövid útmutató hivatkozása az Azure Key Vault Python SDK használatának lépéseire mutató hivatkozás. A bal oldali navigációs területen található tartalomjegyzékben a kulcs beállításának más módjaira mutató hivatkozások találhatók.

Titkos kódok lekérése

  1. Adja hozzá a és azure-identity a azure-keyvault-secrets csomagot a modell betanításakor használt Azure Machine Learning-környezethez. Például úgy, hogy hozzáadja őket a környezet létrehozásához használt Conda-fájlhoz.

    A környezet a docker-rendszerkép összeállítására szolgál, amelyben a betanítási feladat fut a számítási fürtön.

  2. A betanítási kódból használja az Azure Identity SDK-t és Key Vault ügyfélkódtárat a felügyelt identitás hitelesítő adatainak lekéréséhez és a Key Vaultban való hitelesítéshez:

    from azure.identity import DefaultAzureCredential
    from azure.keyvault.secrets import SecretClient
    
    credential = DefaultAzureCredential()
    
    secret_client = SecretClient(vault_url="https://my-key-vault.vault.azure.net/", credential=credential)
    
  3. A hitelesítés után a Key Vault ügyfélkódtár használatával kérje le a titkos kódot a társított kulcs megadásával:

    secret = secret_client.get_secret("secret-name")
    print(secret.value)
    

Következő lépések

Egy példa egy betanítási feladat Azure Machine Learning Python SDK v2 használatával történő elküldésére: Modellek betanítása a Python SDK v2-vel.