Share via


Bağlantı oluşturma (önizleme)

ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)Python SDK azure-ai-ml v2 (geçerli)

Bu makalede, azure dışında bulunan veri kaynaklarına bağlanmayı ve bu verileri Azure Machine Learning hizmetlerinin kullanımına sunmayı öğreneceksiniz. Azure bağlantıları anahtar kasası proxy'leri görevi görür ve bağlantılarla etkileşimler aslında bir Azure anahtar kasasıyla doğrudan etkileşimlerdir. Azure Machine Learning bağlantıları, kullanıcı adı ve parola veri kaynaklarını gizli diziler olarak bir anahtar kasasında güvenli bir şekilde depolar. Anahtar kasası RBAC, bu veri kaynaklarına erişimi denetler. Bu veri kullanılabilirliği için, bu dış kaynaklara bağlantıları Azure desteği:

  • Snowflake DB
  • Amazon S3
  • Azure SQL DB

Önemli

Bu özellik şu anda genel önizlemededir. Bu önizleme sürümü hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için bu sürümü önermeyiz. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir.

Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.

Önkoşullar

  • Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun. Azure Machine Learning'in ücretsiz veya ücretli sürümünü deneyin.

  • Python için Azure Machine Learning SDK'sı.

  • Azure Machine Learning çalışma alanı.

Önemli

Azure Machine Learning bağlantısı, bağlantı oluşturma sırasında geçirilen kimlik bilgilerini Çalışma Alanı Azure Key Vault'ta güvenli bir şekilde depolar. Bağlantı, daha fazla kullanım için anahtar kasası depolama konumundaki kimlik bilgilerine başvurur. Kimlik bilgileri anahtar kasasında depolandıktan sonra doğrudan ilgilenmeniz gerekmez. Kimlik bilgilerini YAML dosyasında depolama seçeneğiniz vardır. CLI komutu veya SDK bunları geçersiz kılabilir. Bir güvenlik ihlali kimlik bilgisi sızıntısına neden olabileceğinden YAML dosyasında kimlik bilgisi depolamasından kaçınmanızı öneririz.

Not

Başarılı bir veri içeri aktarma işlemi için lütfen SDK için en son azure-ai-ml paketini (sürüm 1.5.0 veya üzeri) ve ml uzantısını (sürüm 2.15.1 veya üzeri) yüklediğinizi doğrulayın.

Daha eski bir SDK paketiniz veya CLI uzantınız varsa, lütfen eskisini kaldırın ve yenisini sekme bölümünde gösterilen kodla yükleyin. Burada gösterildiği gibi SDK ve CLI yönergelerini izleyin:

Kod sürümleri

az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml #(the version value needs to be 2.15.1 or later)

Snowflake DB bağlantısı oluşturma

Bu YAML dosyası bir Snowflake DB bağlantısı oluşturur. Uygun değerleri güncelleştirin:

# my_snowflakedb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json
type: snowflake
name: my-sf-db-connection # add your datastore name here

target: jdbc:snowflake://<myaccount>.snowflakecomputing.com/?db=<mydb>&warehouse=<mywarehouse>&role=<myrole>
# add the Snowflake account, database, warehouse name and role name here. If no role name provided it will default to PUBLIC
credentials:
    type: username_password
    username: <username> # add the Snowflake database user name here or leave this blank and type in CLI command line
    password: <password> # add the Snowflake database password here or leave this blank and type in CLI command line

CLI'da Azure Machine Learning bağlantısı oluşturun:

Seçenek 1: YAML dosyasında kullanıcı adını ve parolayı kullanma

az ml connection create --file my_snowflakedb_connection.yaml

2. Seçenek: Komut satırında kullanıcı adını ve parolayı geçersiz kılma

az ml connection create --file my_snowflakedb_connection.yaml --set credentials.username="XXXXX" credentials.password="XXXXX"

Azure SQL DB bağlantısı oluşturma

Bu YAML betiği bir Azure SQL DB bağlantısı oluşturur. Uygun değerleri güncelleştirin:

# my_sqldb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json

type: azure_sql_db
name: my-sqldb-connection

target: Server=tcp:<myservername>,<port>;Database=<mydatabase>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30
# add the sql servername, port addresss and database
credentials:
    type: sql_auth
    username: <username> # add the sql database user name here or leave this blank and type in CLI command line
    password: <password> # add the sql database password here or leave this blank and type in CLI command line

CLI'da Azure Machine Learning bağlantısı oluşturun:

Seçenek 1: YAML dosyasındaki kullanıcı adını / parolayı kullanın

az ml connection create --file my_sqldb_connection.yaml

Seçenek 2: YAML dosyasında kullanıcı adını ve parolayı geçersiz kılma

az ml connection create --file my_sqldb_connection.yaml --set credentials.username="XXXXX" credentials.password="XXXXX"

Amazon S3 bağlantısı oluşturma

Aşağıdaki YAML dosyasıyla bir Amazon S3 bağlantısı oluşturun. Uygun değerleri güncelleştirin:

# my_s3_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json

type: s3
name: my_s3_connection

target: <mybucket> # add the s3 bucket details
credentials:
    type: access_key
    access_key_id: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX # add access key id
    secret_access_key: XxXxXxXXXXXXXxXxXxxXxxXXXXXXXXxXxxXXxXXXXXXXxxxXxXXxXXXXXxXXxXXXxXxXxxxXXxXXxXXXXXxXxxXX # add access key secret

CLI'da Azure Machine Learning bağlantısı oluşturun:

az ml connection create --file my_s3_connection.yaml

Veri olmayan bağlantılar

Git, Python akışı, Azure Container Registry ve API anahtarı kullanan bir bağlantıya bağlanmak için aşağıdaki bağlantı türleri kullanılabilir. Bu bağlantılar veri bağlantıları değildir, ancak kodunuzda kullanılmak üzere dış hizmetlere bağlanmak için kullanılır.

Git

Aşağıdaki YAML dosyalarından biriyle Git bağlantısı oluşturun. Uygun değerleri güncelleştirin:

  • Kişisel erişim belirteci (PAT) kullanarak Bağlan:

    #Connection.yml
    name: test_ws_conn_git_pat
    type: git
    target: https://github.com/contoso/contosorepo
    credentials:
        type: pat
        pat: dummy_pat
    
  • Genel depoya Bağlan (kimlik bilgisi yok):

    #Connection.yml
    
    name: git_no_cred_conn
    type: git
    target: https://https://github.com/contoso/contosorepo
    
    

CLI'da Azure Machine Learning bağlantısı oluşturun:

az ml connection create --file connection.yaml

Python akışı

Aşağıdaki YAML dosyalarından biriyle Python akışına bağlantı oluşturun. Uygun değerleri güncelleştirin:

  • Kişisel erişim belirteci (PAT) kullanarak Bağlan:

    #Connection.yml
    name: test_ws_conn_python_pat
    type: python_feed
    target: https://test-feed.com
    credentials:
        type: pat
        pat: dummy_pat
    
  • Kullanıcı adı ve parola kullanarak Bağlan:

    name: test_ws_conn_python_user_pass
    type: python_feed
    target: https://test-feed.com
    credentials:
        type: username_password
        username: john
        password: pass
    
    
  • Genel akışa Bağlan (kimlik bilgisi yok):

    name: test_ws_conn_python_no_cred
    type: python_feed
    target: https://test-feed.com3
    

CLI'da Azure Machine Learning bağlantısı oluşturun:

az ml connection create --file connection.yaml

Azure Container Registry

Aşağıdaki YAML dosyalarından biriyle Bir Azure Container Registry bağlantısı oluşturun. Uygun değerleri güncelleştirin:

  • Microsoft Entra Id kimlik doğrulamayı kullanarak Bağlan:

    name: test_ws_conn_cr_managed
    type: container_registry
    target: https://test-feed.com
    credentials:
        type: managed_identity
        client_id: client_id
        resource_id: resource_id
    
  • Kullanıcı adı ve parola kullanarak Bağlan:

    name: test_ws_conn_cr_user_pass
    type: container_registry
    target: https://test-feed.com2
    credentials:
        type: username_password
        username: contoso
        password: pass
    

CLI'da Azure Machine Learning bağlantısı oluşturun:

az ml connection create --file connection.yaml

API key

Aşağıdaki örnek bir API anahtarı bağlantısı oluşturur:

from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration, ApiKeyConfiguration


name = "my_api_key"

target = "https://XXXXXXXXX.core.windows.net/mycontainer"

wps_connection = WorkspaceConnection(
    name=name,
    type="apikey",
    target=target,
    credentials=ApiKeyConfiguration(key="XXXXXXXXX"),    
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)

Veri bağlantısı (Snowflake DB, Amazon S3 veya Azure SQL DB) kullanıyorsanız daha fazla bilgi için şu makalelere bakın: