Share via


Csatlakozás tárolóba identitásalapú adathozzáférés használatával az SDK v1 használatával

Ebből a cikkből megtudhatja, hogyan csatlakozhat az Azure-beli tárolási szolgáltatásokhoz identitásalapú adathozzáféréssel és Azure Machine Tanulás-adattárakkal a Pythonhoz készült Azure Machine Tanulás SDK-n keresztül.

Az adattárak általában hitelesítő adatokon alapuló hitelesítéssel ellenőrzik, hogy rendelkezik-e engedéllyel a tárolási szolgáltatáshoz való hozzáféréshez. Az adattárak a kapcsolati adatokat, például az előfizetés azonosítóját és a jogkivonat-engedélyezést a munkaterülethez társított kulcstartóban őrzik meg. Amikor identitásalapú adathozzáférést használó adattárat hoz létre, a rendszer az Azure-fiókját (Microsoft Entra-jogkivonatot) használja annak ellenőrzésére, hogy rendelkezik-e engedéllyel a tárolási szolgáltatáshoz való hozzáféréshez. Az identitásalapú adathozzáférési forgatókönyvben a rendszer nem menti a hitelesítési hitelesítő adatokat. Csak a tárfiók adatai tárolódnak az adattárban.

Ha identitásalapú adateléréssel rendelkező adattárakat szeretne létrehozni az Azure Machine Tanulás studio felhasználói felületén keresztül, tekintse meg Csatlakozás az Azure Machine Tanulás studióval való adathozzáférést.

Hitelesítő adatokon alapuló hitelesítést használó adattárak( például hozzáférési kulcsok vagy szolgáltatásnevek) létrehozásához tekintse meg az Azure-beli tárolási szolgáltatások Csatlakozás.

Identitásalapú adathozzáférés az Azure Machine Tanulás

Identitásalapú adathozzáférést két forgatókönyvben alkalmazhat az Azure Machine Tanulás. Ezek a forgatókönyvek jól illeszkednek az identitásalapú hozzáféréshez, ha bizalmas adatokkal dolgozik, és részletesebb adathozzáférés-kezelésre van szüksége:

Figyelmeztetés

Az identitásalapú adathozzáférés nem támogatott automatizált gépi tanulási kísérletek esetén.

  • Hozzáférés a tárolási szolgáltatásokhoz
  • Gépi tanulási modellek betanítása privát adatokkal

Hozzáférés a tárolási szolgáltatásokhoz

A tárolási szolgáltatásokhoz identitásalapú adathozzáférésen keresztül csatlakozhat az Azure Machine Tanulás-adattárakkal vagy az Azure Machine Tanulás-adatkészletekkel.

A hitelesítési hitelesítő adatok egy adattárban vannak tárolva, amely biztosítja, hogy rendelkezik engedéllyel a tárolási szolgáltatáshoz való hozzáféréshez. Ha ezeket a hitelesítő adatokat adattárakon keresztül regisztrálják, a munkaterület-olvasó szerepkörrel rendelkező felhasználók lekérhetik őket. Ez a hozzáférési méret bizonyos szervezetek számára biztonsági problémát jelenthet. További információ a munkaterület-olvasó szerepkörről.

Identitásalapú adathozzáférés használatakor az Azure Machine Tanulás kéri a Microsoft Entra-jogkivonatot az adatelérési hitelesítéshez, ahelyett, hogy a hitelesítő adatait az adattárban tartana. Ez a megközelítés lehetővé teszi az adathozzáférés-kezelést a tárolási szinten, és fenntartja a hitelesítő adatok biztonságát.

Ugyanez a viselkedés érvényes a következő esetekben:

Feljegyzés

A hitelesítő adatokon alapuló hitelesítéssel tárolt hitelesítő adatok közé tartoznak az előfizetési azonosítók, a közös hozzáférésű jogosultságkódok (SAS)-jogkivonatok, valamint a tárelérési kulcs és a szolgáltatásnév adatai, például az ügyfélazonosítók és a bérlői azonosítók.

Modellbetanítás privát adatokkal

Bizonyos gépi tanulási forgatókönyvek magánadatokkal rendelkező betanítási modelleket is magukban foglalnak. Ilyen esetekben az adatszakértőknek betanítási munkafolyamatokat kell futtatniuk anélkül, hogy bizalmas bemeneti adatoknak kellene kitévedni. Ebben a forgatókönyvben a betanítási számítás felügyelt identitása hitelesíti az adathozzáférést. Ez a módszer lehetővé teszi a tárolási rendszergazdák számára, hogy hozzáférést biztosítsanak a Storage Blob Data Reader számára ahhoz a felügyelt identitáshoz, amelyet a betanítási számítás a betanítási feladat futtatásához használ. Az egyes adatelemzőknek nem kell hozzáférést biztosítaniuk. További információ: Felügyelt identitás beállítása számítási fürtön.

Előfeltételek

Adattárak létrehozása és regisztrálása

Amikor adattárként regisztrál egy tárolási szolgáltatást az Azure-ban, automatikusan létrehozza és regisztrálja az adattárat egy adott munkaterületen. A szükséges engedélytípusokra vonatkozó útmutatásért tekintse meg a Tárterület hozzáférési engedélyeit . Manuálisan is létrehozhatja azt a tárolót, amelyhez különleges engedélyek nélkül szeretne csatlakozni, és csak a névre van szüksége.

A virtuális hálózatok mögötti adattárolókhoz való csatlakozással kapcsolatos részletekért tekintse meg a virtuális hálózatok használata című témakört.

Az alábbi kódban figyelje meg az olyan hitelesítési paraméterek hiányát, mint sas_tokena , account_key, subscription_idés a szolgáltatásnév client_id. Ez a kihagyás azt jelzi, hogy az Azure Machine Tanulás identitásalapú adathozzáférést használ a hitelesítéshez. Az adattárak létrehozása általában interaktívan történik egy jegyzetfüzetben vagy a stúdión keresztül. Az adathozzáférési hitelesítés a Microsoft Entra-jogkivonatot használja.

Feljegyzés

Az adattárneveknek csak kisbetűkből, számokból és aláhúzásjelekből kell állniuk.

Azure-blobtároló

Az Azure Blob-tárolók adattárként való regisztrálásához használja register_azure_blob_container()a következőt: .

Az alábbi kód létrehozza az credentialless_blob adattárat, regisztrálja a ws munkaterületen, és hozzárendeli a blob_datastore változóhoz. Ez az adattár a tárfiók blobtárolójába my-account-name fér hozzámy_container_name.

# Create blob datastore without credentials.
blob_datastore = Datastore.register_azure_blob_container(workspace=ws,
                                                      datastore_name='credentialless_blob',
                                                      container_name='my_container_name',
                                                      account_name='my_account_name')

1. generációs Azure Data Lake Storage

A register_azure_data_lake() használatával regisztrálhat egy, az 1. generációs Azure Data Lake Storage-hoz csatlakozó adattárat.

Az alábbi kód létrehozza az credentialless_adls1 adattárat, regisztrálja a workspace munkaterületen, és hozzárendeli a adls_dstore változóhoz. Ez az adattár hozzáfér az adls_storage Azure Data Lake Storage-fiókhoz.

# Create Azure Data Lake Storage Gen1 datastore without credentials.
adls_dstore = Datastore.register_azure_data_lake(workspace = workspace,
                                                 datastore_name='credentialless_adls1',
                                                 store_name='adls_storage')

Azure Data Lake Storage Gen2

A register_azure_data_lake_gen2() használatával regisztráljon egy olyan adattárat, amely csatlakozik az Azure Data Lake Storage Gen2-hez.

Az alábbi kód létrehozza az credentialless_adls2 adattárat, regisztrálja a ws munkaterületen, és hozzárendeli a adls2_dstore változóhoz. Ez az adattár a tárfiók fájlrendszeréhez myadls2 fér hozzátabular.

# Create Azure Data Lake Storage Gen2 datastore without credentials.
adls2_dstore = Datastore.register_azure_data_lake_gen2(workspace=ws, 
                                                       datastore_name='credentialless_adls2', 
                                                       filesystem='tabular', 
                                                       account_name='myadls2')

Azure SQL Database

Azure SQL-adatbázis esetén a register_azure_sql_database() használatával regisztráljon egy Azure SQL Database-tárolóhoz csatlakozó adattárat.

Az alábbi kód létrehozza és regisztrálja az credentialless_sqldb adattárat a ws munkaterületen, és hozzárendeli a változóhoz. sqldb_dstore Ez az adattár az SQL DB-kiszolgálón fér hozzá az myserver adatbázishozmydb.

# Create a sqldatabase datastore without credentials
                                                       
sqldb_dstore = Datastore.register_azure_sql_database(workspace=ws,
                                                       datastore_name='credentialless_sqldb',
                                                       server_name='myserver',
                                                       database_name='mydb')                                                       
                                                   

Tárolási hozzáférési engedélyek

Ahhoz, hogy biztonságosan csatlakozzon a tárolási szolgáltatáshoz az Azure-ban, az Azure Machine Tanulás engedélyre van szüksége a megfelelő adattár eléréséhez.

Figyelmeztetés

A tárfiókokhoz való bérlőközi hozzáférés nem támogatott. Ha a forgatókönyvhöz bérlők közötti hozzáférésre van szükség, forduljon az Azure Machine Tanulás Adattámogatási csapat aliasához amldatasupport@microsoft.com egy egyéni kódmegoldással kapcsolatos segítségért.

Az identitásalapú adathozzáférés csak a következő tárolási szolgáltatásokhoz való kapcsolódást támogatja.

  • Azure Blob Storage
  • 1. generációs Azure Data Lake Storage
  • 2. generációs Azure Data Lake Storage
  • Azure SQL Database

Ezeknek a tárolási szolgáltatásoknak a eléréséhez legalább Storage Blob Data Reader-hozzáféréssel kell rendelkeznie a tárfiókhoz. Csak a tárfiókok tulajdonosai módosíthatják a hozzáférési szintet az Azure Portalon keresztül.

Ha inkább nem szeretné használni a felhasználói identitást (Microsoft Entra-azonosító), a munkaterület felügyeltrendszer-identitás (MSI) engedélyével is létrehozhatja az adattárat. Ehhez tulajdonosi engedélyekkel kell rendelkeznie a tárfiókhoz, és hozzá kell adnia a grant_workspace_access= True paramétert az adatregisztrálási módszerhez.

Ha egy modellt egy távoli számítási célon tanít be, és betanítás céljából szeretné elérni az adatokat, a számítási identitásnak legalább a Storage Blob Data Reader szerepkört kell megadnia a tárolási szolgáltatástól. Megtudhatja, hogyan állíthat be felügyelt identitást egy számítási fürtön.

Virtuális hálózatokkal végzett munka

Alapértelmezés szerint az Azure Machine Tanulás nem tud kommunikálni tűzfal mögött vagy virtuális hálózaton található tárfiókkal.

A tárfiókokat úgy konfigurálhatja, hogy csak bizonyos virtuális hálózatokról engedélyezze a hozzáférést. Ehhez a konfigurációhoz további lépések szükségesek, hogy az adatok ne szivárogjanak ki a hálózaton kívül. Ez a viselkedés a hitelesítő adatokon alapuló adathozzáférés esetében is ugyanaz. További információ: Virtuális hálózati forgatókönyvek konfigurálása.

Ha a tárfiók rendelkezik virtuális hálózati beállításokkal, ők határozzák meg a szükséges identitástípust és engedélyek elérését. Az adatelőnézet és az adatprofil esetében például a virtuális hálózati beállítások határozzák meg, hogy milyen típusú identitást használnak az adathozzáférés hitelesítéséhez.

  • Olyan esetekben, amikor csak bizonyos IP-címek és alhálózatok férhetnek hozzá a tárterülethez, az Azure Machine Tanulás a munkaterület MSI-jének használatával végzi el az adatelőnézeteket és -profilokat.

  • Ha a tároló ADLS Gen 2 vagy Blob, és rendelkezik virtuális hálózati beállításokkal, az ügyfelek a létrehozás során megadott adattárbeállításoktól függően felhasználói identitást vagy munkaterületi MSI-t használhatnak.

  • Ha a virtuális hálózat beállítása "A megbízható szolgáltatások listájában szereplő Azure-szolgáltatások hozzáférésének engedélyezése ehhez a tárfiókhoz", akkor a munkaterületi MSI lesz használatban.

Adatok használata a tárolóban

Javasoljuk, hogy az Azure Machine Tanulás adatkészleteket használja, amikor a tárolóban lévő adatokat az Azure Machine Tanulás használja.

Fontos

Az identitásalapú adathozzáférést használó adathalmazok nem támogatottak az automatizált gépi tanulási kísérletekhez.

Az adathalmazok egy lazán kiértékelt hasznosítható objektumba csomagolják az adatokat a gépi tanulási feladatokhoz, például a betanításhoz. Adathalmazokkal bármilyen formátumú fájlokat tölthet le vagy csatlakoztathat az Azure Storage-szolgáltatásokból, például az Azure Blob Storage-ból és az Azure Data Lake Storage-ból egy számítási célhoz.

Adathalmaz létrehozásához az identitásalapú adathozzáférést is használó adattárak elérési útjaira hivatkozhat.

  • Ha a mögöttes tárfiók típusa Blob vagy ADLS Gen 2, a felhasználói identitásnak blobolvasó szerepkörre van szüksége.
  • Ha a mögöttes tároló az ADLS Gen 1, az engedélyeket a tár hozzáférés-vezérlési listájával (ACL) állíthatja be.

Az alábbi példában már létezik és blob_datastore identitásalapú adathozzáférést használ.

blob_dataset = Dataset.Tabular.from_delimited_files(blob_datastore,'test.csv') 

Kihagyhatja az adattárak létrehozását, és közvetlenül a tárolási URL-címekről hozhat létre adathalmazokat. Ez a funkció jelenleg csak az Azure-blobokat, valamint az Azure Data Lake Storage Gen1-et és Gen2-t támogatja. A tár URL-címén alapuló létrehozáshoz csak a felhasználói identitás szükséges a hitelesítéshez.

blob_dset = Dataset.File.from_files('https://myblob.blob.core.windows.net/may/keras-mnist-fashion/')

Amikor olyan betanítási feladatot küld, amely identitásalapú adathozzáféréssel létrehozott adathalmazt használ, a betanítási számítási felügyelt identitást használja az adathozzáférés-hitelesítéshez. A Microsoft Entra-jogkivonat nincs használatban. Ebben a forgatókönyvben győződjön meg arról, hogy a számítás felügyelt identitása legalább a Storage Blob Data Reader szerepkört kapja a tárolási szolgáltatástól. További információ: Felügyelt identitás beállítása számítási fürtökön.

Következő lépések