Sdílet prostřednictvím


Konfigurace proxy serverů pro Sadu Azure SDK pro Python

Proxy server je často potřeba v následujících případech:

  • Nacházíte se za podnikovou bránou firewall
  • Síťový provoz musí projít zabezpečovacím zařízením.
  • Chcete použít vlastní proxy server pro ladění nebo směrování.

Pokud vaše organizace vyžaduje použití proxy serveru pro přístup k internetovým prostředkům, musíte nastavit proměnnou prostředí s informacemi proxy serveru tak, aby používala sadu Azure SDK pro Python. Nastavení proměnných prostředí (HTTP_PROXY a HTTPS_PROXY) způsobí, že sada Azure SDK pro Python použije proxy server za běhu.

Adresa URL proxy serveru má formulář http[s]://[username:password@]<ip_address_or_domain>:<port>/ , ve kterém je kombinace uživatelského jména a hesla volitelná.

Informace o proxy serveru můžete získat od it/síťového týmu, z prohlížeče nebo ze síťových nástrojů.

Proxy server pak můžete nakonfigurovat globálně pomocí proměnných prostředí nebo můžete určit proxy předáním argumentu pojmenovaného proxies jednotlivému konstruktoru klienta nebo metodě operace.

Globální konfigurace

Pokud chcete pro svůj skript nebo aplikaci nakonfigurovat proxy server globálně, definujte proměnné prostředí HTTP_PROXY nebo HTTPS_PROXY pomocí URL serveru. Tyto proměnné fungují s libovolnou verzí knihoven Azure. Všimněte si, že HTTPS_PROXY to neznamená HTTPS proxy server, ale proxy pro https:// požadavky.

Tyto proměnné prostředí se ignorují, pokud předáte parametr use_env_settings=False konstruktoru objektu klienta nebo metodě operace.

Nastavení z příkazového řádku

rem Non-authenticated HTTP server:
set HTTP_PROXY=http://10.10.1.10:1180

rem Authenticated HTTP server:
set HTTP_PROXY=http://username:password@10.10.1.10:1180

rem Non-authenticated HTTPS server:
set HTTPS_PROXY=http://10.10.1.10:1180

rem Authenticated HTTPS server:
set HTTPS_PROXY=http://username:password@10.10.1.10:1180

Nastavení v kódu Pythonu

Nastavení proxy serveru můžete nastavit pomocí proměnných prostředí bez nutnosti vlastní konfigurace.

import os
os.environ["HTTP_PROXY"] = "http://10.10.1.10:1180"

# Alternate URL and variable forms:
# os.environ["HTTP_PROXY"] = "http://username:password@10.10.1.10:1180"
# os.environ["HTTPS_PROXY"] = "http://10.10.1.10:1180"
# os.environ["HTTPS_PROXY"] = "http://username:password@10.10.1.10:1180"

Vlastní konfigurace

Nastavení kódu Pythonu pro jednotlivé klienty nebo metody

Pro vlastní konfiguraci můžete zadat proxy server pro konkrétní objekt klienta nebo metodu operace. Zadejte proxy server s argumentem s názvem proxies.

Například následující kód z článku Příklad: Použití úložiště Azure určuje proxy HTTPS s přihlašovacími údaji uživatele s konstruktorem BlobClient . V tomto případě objekt pochází z knihovny azure.storage.blob, která je založená na azure.core.

from azure.identity import DefaultAzureCredential

# Import the client object from the SDK library
from azure.storage.blob import BlobClient

credential = DefaultAzureCredential()

storage_url = "https://<storageaccountname>.blob.core.windows.net"

blob_client = BlobClient(storage_url, container_name="blob-container-01",
    blob_name="sample-blob.txt", credential=credential,
    proxies={ "https": "https://username:password@10.10.1.10:1180" }
)

# Other forms that the proxy URL might take:
# proxies={ "http": "http://10.10.1.10:1180" }
# proxies={ "http": "http://username:password@10.10.1.10:1180" }
# proxies={ "https": "https://10.10.1.10:1180" }