Vytvoření připojení (Preview)

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)Python SDK azure-ai-ml v2 (aktuální)

V tomto článku se dozvíte, jak se připojit ke zdrojům dat umístěným mimo Azure, abyste tato data zpřístupnili službám Azure Machine Učení. Připojení Azure slouží jako proxy trezoru klíčů a interakce s připojeními jsou ve skutečnosti přímé interakce se službou Azure Key Vault. Azure Machine Učení připojení bezpečně ukládají datové prostředky uživatelského jména a hesla jako tajné kódy v trezoru klíčů. RBAC trezoru klíčů řídí přístup k těmto datovým prostředkům. Pro tuto dostupnost dat podpora Azure připojení k těmto externím zdrojům:

  • Snowflake DB
  • Amazon S3
  • Azure SQL DB

Důležité

Tato funkce je v současné době ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti.

Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Požadavky

Důležité

Připojení azure machine Učení bezpečně ukládá přihlašovací údaje předávané při vytváření připojení ve službě Azure Key Vault pracovního prostoru. Připojení odkazuje na přihlašovací údaje z umístění úložiště trezoru klíčů pro další použití. Po uložení v trezoru klíčů nebudete muset s přihlašovacími údaji pracovat přímo. Máte možnost uložit přihlašovací údaje do souboru YAML. Příkaz rozhraní příkazového řádku nebo sada SDK je může přepsat. Doporučujeme vyhnout se ukládání přihlašovacích údajů v souboru YAML, protože porušení zabezpečení může vést k úniku přihlašovacích údajů.

Poznámka:

Pokud chcete úspěšně importovat data, ověřte, že jste nainstalovali nejnovější balíček azure-ai-ml (verze 1.5.0 nebo novější) pro sadu SDK a rozšíření ml (verze 2.15.1 nebo novější).

Pokud máte starší balíček sady SDK nebo rozšíření rozhraní příkazového řádku, odeberte starý balíček nebo rozšíření rozhraní příkazového řádku a nainstalujte nový balíček s kódem zobrazeným v části karta. Postupujte podle pokynů pro sadu SDK a rozhraní příkazového řádku, jak je znázorněno tady:

Verze kódu

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)

Vytvoření připojení Snowflake DB

Tento soubor YAML vytvoří připojení Snowflake DB. Nezapomeňte aktualizovat příslušné hodnoty:

# 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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

Možnost 1: Použití uživatelského jména a hesla v souboru YAML

az ml connection create --file my_snowflakedb_connection.yaml

Možnost 2: Přepsání uživatelského jména a hesla na příkazovém řádku

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

Vytvoření připojení ke službě Azure SQL DB

Tento skript YAML vytvoří připojení k Databázi Azure SQL. Nezapomeňte aktualizovat příslušné hodnoty:

# 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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

Možnost 1: Použití uživatelského jména a hesla ze souboru YAML

az ml connection create --file my_sqldb_connection.yaml

Možnost 2: Přepsání uživatelského jména a hesla v souboru YAML

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

Vytvoření připojení Amazon S3

Vytvořte připojení Amazon S3 s následujícím souborem YAML. Nezapomeňte aktualizovat příslušné hodnoty:

# 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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

az ml connection create --file my_s3_connection.yaml

Ne-datová připojení

Následující typy připojení se dají použít k připojení k Gitu, kanálu Pythonu, službě Azure Container Registry a připojení, které používá klíč rozhraní API. Tato připojení nejsou datová připojení, ale slouží k připojení k externím službám pro použití v kódu.

Git

Vytvořte připojení Gitu s jedním z následujících souborů YAML. Nezapomeňte aktualizovat příslušné hodnoty:

  • Připojení pomocí tokenu PAT( Personal Access Token):

    #Connection.yml
    name: test_ws_conn_git_pat
    type: git
    target: https://github.com/contoso/contosorepo
    credentials:
        type: pat
        pat: dummy_pat
    
  • Připojení do veřejného úložiště (bez přihlašovacích údajů):

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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

az ml connection create --file connection.yaml

Informační kanál Pythonu

Vytvořte připojení k informačnímu kanálu Pythonu s jedním z následujících souborů YAML. Nezapomeňte aktualizovat příslušné hodnoty:

  • Připojení pomocí tokenu PAT( Personal Access Token):

    #Connection.yml
    name: test_ws_conn_python_pat
    type: python_feed
    target: https://test-feed.com
    credentials:
        type: pat
        pat: dummy_pat
    
  • Připojení pomocí uživatelského jména a hesla:

    name: test_ws_conn_python_user_pass
    type: python_feed
    target: https://test-feed.com
    credentials:
        type: username_password
        username: john
        password: pass
    
    
  • Připojení k veřejnému informačnímu kanálu (bez přihlašovacích údajů):

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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

az ml connection create --file connection.yaml

Azure Container Registry

Vytvořte připojení ke službě Azure Container Registry s jedním z následujících souborů YAML. Nezapomeňte aktualizovat příslušné hodnoty:

  • Připojení pomocí ověřování Microsoft Entra ID:

    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
    
  • Připojení pomocí uživatelského jména a hesla:

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

Vytvořte připojení azure machine Učení v rozhraní příkazového řádku:

az ml connection create --file connection.yaml

Klíč rozhraní API

Následující příklad vytvoří připojení klíče rozhraní API:

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)

Pokud používáte datové připojení (Snowflake DB, Amazon S3 nebo Azure SQL DB), další informace najdete v těchto článcích: