Buat kembali kunci akses akun penyimpanan
BERLAKU UNTUK:Ekstensi ml Azure CLI v2 (saat ini)Python SDK azure-ai-ml v2 (saat ini)
BERLAKU UNTUK: Python SDK azure-ai-ml v2 (saat ini)
BERLAKU UNTUK:Ekstensi ml Azure CLI v1Python SDK azureml v1
BERLAKU UNTUK: Python SDK azureml v1
Pelajari cara mengubah kunci akses untuk akun Penyimpanan Azure yang digunakan oleh Azure Machine Learning. Azure Machine Learning dapat menggunakan akun penyimpanan untuk menyimpan data atau model terlatih.
Untuk tujuan keamanan, Anda mungkin perlu mengubah kunci akses untuk akun Penyimpanan Azure. Saat Anda meregenerasi kunci akses, Azure Machine Learning harus diperbarui untuk menggunakan kunci baru. Azure Machine Learning mungkin menggunakan akun penyimpanan untuk penyimpanan model dan sebagai datastore.
Penting
Kredensial yang terdaftar dengan penyimpanan data disimpan di Vault Kunci Azure yang terkait dengan ruang kerja. Jika Anda mengaktifkan soft-delete untuk Vault Kunci Anda, artikel ini menyediakan instruksi untuk memperbarui kredensial. Jika Anda membatalkan pendaftaran datastore dan mencoba mendaftarkannya kembali dengan nama yang sama, tindakan ini akan gagal. Untuk skenario tentang cara mengaktifkan penghapusan sementara ini, lihat Mengaktifkan Soft Delete untuk brankas kunci yang ada.
Prasyarat
- Ruang kerja Azure Machine Learning. Untuk informasi selengkapnya, lihat artikel Membuat sumber daya ruang kerja.
Catatan
Cuplikan kode dalam dokumen ini diuji dengan versi 1.0.83 dari Python SDK.
Apa yang perlu diperbarui
Akun penyimpanan dapat digunakan oleh ruang kerja Azure Machine Learning (menyimpan log, model, snapshot, dll.) dan sebagai penyimpanan data. Proses untuk memperbarui ruang kerja adalah satu perintah tunggal Azure CLI, dan dapat dijalankan setelah memperbarui kunci penyimpanan. Proses pembaruan toko data lebih terlibat, dan mengharuskan menemukan penyimpanan data apa yang saat ini menggunakan akun penyimpanan dan kemudian mendaftarkannya kembali.
Penting
Perbarui ruang kerja menggunakan Azure CLI, dan penyimpanan data menggunakan Python, secara bersamaan. Memperbarui hanya satu atau yang lain, tidak cukup, dan dapat menyebabkan kesalahan sampai keduanya diperbarui.
Untuk menemukan akun penyimpanan yang digunakan oleh penyimpanan data Anda, gunakan kode berikut:
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential
#Enter details of your Azure Machine Learning workspace
subscription_id = '<SUBSCRIPTION_ID>'
resource_group = '<RESOURCE_GROUP>'
workspace_name = '<AZUREML_WORKSPACE_NAME>'
ml_client = MLClient(credential=DefaultAzureCredential(),
subscription_id=subscription_id,
resource_group_name=resource_group,
workspace_name=workspace_name)
# list all the datastores
datastores = ml_client.datastores.list()
for ds in datastores:
if ds.credentials.type == "account_key":
if ds.type.name == "AZURE_BLOB":
print("Blob store - datastore name: " + ds.name + ", storage account name: " +
ds.account_name + ", container name: " + ds.container_name)
if ds.type.name == "AZURE_FILE":
print("Blob store - datastore name: " + ds.name + ", storage account name: " +
ds.account_name + ", file share name: " + ds.file_share_name)
Kode ini mencari datastore terdaftar apa pun yang menggunakan Azure Storage dengan autentikasi kunci, dan mencantumkan informasi berikut:
- Nama datastore: Nama datastore yang terdaftar di akun penyimpanan.
- Nama akun penyimpanan: Nama akun Penyimpanan Azure.
- Kontainer: Kontainer dalam akun penyimpanan yang digunakan oleh pendaftaran ini.
- Berbagi file: Berbagi file yang digunakan oleh pendaftaran ini.
import azureml.core
from azureml.core import Workspace, Datastore
ws = Workspace.from_config()
default_ds = ws.get_default_datastore()
print("Default datstore: " + default_ds.name + ", storage account name: " +
default_ds.account_name + ", container name: " + default_ds.container_name)
datastores = ws.datastores
for name, ds in datastores.items():
if ds.datastore_type == "AzureBlob":
print("Blob store - datastore name: " + name + ", storage account name: " +
ds.account_name + ", container name: " + ds.container_name)
if ds.datastore_type == "AzureFile":
print("File share - datastore name: " + name + ", storage account name: " +
ds.account_name + ", container name: " + ds.container_name)
Kode ini menyerupai setiap penyimpanan data terdaftar yang menggunakan Penyimpanan Azure dan mencantumkan informasi berikut:
- Nama datastore: Nama datastore yang terdaftar di akun penyimpanan.
- Nama akun penyimpanan: Nama akun Penyimpanan Azure.
- Kontainer: Kontainer dalam akun penyimpanan yang digunakan oleh pendaftaran ini.
Ini juga menunjukkan apakah datastore untuk Azure Blob atau berbagi File Azure, karena ada berbagai metode untuk mendaftarkan kembali setiap jenis datastore.
Jika entri ada untuk akun penyimpanan yang Anda rencanakan untuk meregenerasi kunci akses, simpan nama datastore, nama akun penyimpanan, dan nama kontainer.
Memperbarui tombol akses
Untuk memperbarui Azure Machine Learning untuk menggunakan kunci baru, gunakan langkah-langkah berikut:
Penting
Lakukan semua langkah, perbarui ruang kerja menggunakan CLI, maupun penyimpanan data menggunakan Python. Memperbarui hanya satu atau yang lain dapat menyebabkan kesalahan hingga keduanya diperbarui.
Regenerasi kuncinya. Untuk informasi tentang meregenerasi kunci akses, lihat Mengelola kunci akses akun penyimpanan. Simpan kunci baru.
Ruang kerja Azure Machine Learning akan secara otomatis menyinkronkan kunci baru dan mulai menggunakannya setelah satu jam. Untuk memaksa ruang kerja agar segera menyinkronkan kunci baru, gunakan perintah berikut:
Untuk masuk ke langganan Azure yang berisi ruang kerja Anda dengan menggunakan perintah Azure CLI berikut ini:
az login
Tip
Setelah masuk, Anda akan melihat daftar langganan yang terkait dengan akun Azure Anda. Informasi langganan dengan
isDefault: true
adalah langganan yang saat ini diaktifkan untuk perintah Azure CLI. Langganan ini harus sama dengan yang berisi ruang kerja Azure Machine Learning Anda. Anda dapat menemukan informasi langganan di halaman gambaran umum untuk ruang kerja Anda di portal Azure.Untuk memilih langganan lain yang akan digunakan untuk perintah Azure CLI, jalankan
az account set -s <subscription>
perintah dan tentukan nama langganan atau ID yang akan dialihkan. Untuk informasi selengkapnya tentang pemilihan langganan, lihat Menggunakan beberapa langganan Azure.Untuk memperbarui ruang kerja untuk menggunakan kunci baru, gunakan perintah berikut ini. Ganti
myworkspace
dengan nama ruang kerja Azure Machine Learning Anda, dan gantimyresourcegroup
dengan nama grup sumber daya Azure yang berisi ruang kerja.az ml workspace sync-keys -n myworkspace -g myresourcegroup
Perintah ini secara otomatis menyinkronkan kunci baru untuk akun penyimpanan Azure yang digunakan oleh ruang kerja.
Anda dapat mendaftarkan ulang ruang penyimpanan yang menggunakan akun penyimpanan melalui SDK atau studio Azure Machine Learning.
Untuk mendaftarkan kembali penyimpanan data melalui Python SDK, gunakan nilai dari Bagian apa yang perlu diperbarui dan kunci dari langkah 1 dengan kode berikut.
from azure.ai.ml.entities import AzureBlobDatastore, AccountKeyConfiguration from azure.ai.ml import MLClient from azure.identity import DefaultAzureCredential subscription_id = '<SUBSCRIPTION_ID>' resource_group = '<RESOURCE_GROUP>' workspace_name = '<AZUREML_WORKSPACE_NAME>' ml_client = MLClient(credential=DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name=workspace_name) blob_datastore1 = AzureBlobDatastore( name="your datastore name", description="Description", account_name="your storage account name", container_name="your container name", protocol="https", credentials=AccountKeyConfiguration( account_key="new storage account key" ), ) ml_client.create_or_update(blob_datastore1)
Karena
overwrite=True
ditentukan, kode ini menimpa pendaftaran yang ada saat ini dan memperbaruinya untuk menggunakan kunci baru.# Re-register the blob container ds_blob = Datastore.register_azure_blob_container(workspace=ws, datastore_name='your datastore name', container_name='your container name', account_name='your storage account name', account_key='new storage account key', overwrite=True) # Re-register file shares ds_file = Datastore.register_azure_file_share(workspace=ws, datastore_name='your datastore name', file_share_name='your container name', account_name='your storage account name', account_key='new storage account key', overwrite=True)
Untuk mendaftarkan ulang datastore melalui studio
Di studio, pilih Data di panel kiri di bawah Aset.
Di bagian atas, pilih Penyimpanan data.
Pilih penyimpanan data mana yang ingin Anda perbarui.
Pilih tombol Perbarui kredensial di kiri atas.
Gunakan kunci akses baru Anda dari langkah 1 untuk mengisi formulir dan klik Simpan.
Jika Anda memperbarui kredensial untuk penyimpanan data default Anda, selesaikan langkah ini dan ulangi langkah 2b untuk menyinkronkan ulang kunci baru Anda dengan penyimpanan data default ruang kerja.
Langkah berikutnya
untuk informasi selengkapnya tentang menggunakan penyimpanan data, lihat Menggunakan penyimpanan data.
Untuk informasi selengkapnya tentang mendaftarkan penyimpanan data, lihat Datastore
referensi kelas.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk