Proxyk konfigurálása a Pythonhoz készült Azure SDK-hoz

Ha a szervezetnek proxykiszolgálót kell használnia az internetes erőforrások eléréséhez, be kell állítania egy környezeti változót a proxykiszolgáló adataival a Pythonhoz készült Azure SDK használatához. A környezeti változók (HTTP_PROXY és HTTPS_PROXY) beállítása miatt a Pythonhoz készült Azure SDK futásidőben használja a proxykiszolgálót.

A proxykiszolgáló URL-címe olyan űrlapot http[s]://[username:password@]<ip_address_or_domain>:<port>/ tartalmaz, amelyben a felhasználónév és a jelszó kombinációja nem kötelező.

Ezután globálisan konfigurálhat egy proxyt környezeti változók használatával, vagy megadhat egy proxyt úgy, hogy átad egy egyedi ügyfélkonstruktornak vagy műveleti módszernek elnevezett proxies argumentumot.

Globális konfiguráció

Ha globálisan szeretne proxyt konfigurálni a szkripthez vagy alkalmazáshoz, definiáljon HTTP_PROXY vagy HTTPS_PROXY környezeti változókat a kiszolgáló URL-címével. Ezek a változók az Azure-kódtárak bármely verziójával működnek. Vegye figyelembe, hogy HTTPS_PROXY ez nem proxyt jelent HTTPS , hanem a kérések proxyját https:// .

Ezek a környezeti változók figyelmen kívül lesznek hagyva, ha a paramétert use_env_settings=False egy ügyfélobjektum-konstruktornak vagy műveleti módszernek adja át.

Beállítás a parancssorból

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

Beállítás Python-kódban

A proxybeállításokat környezeti változókkal állíthatja be, egyéni konfiguráció nélkül.

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"

Egyéni konfiguráció

Beállítás Python-kódban ügyfélenként vagy metódusonként

Egyéni konfiguráció esetén megadhat proxyt egy adott ügyfélobjektumhoz vagy műveleti módszerhez. Adjon meg egy proxykiszolgálót a nevesített proxiesargumentummal.

Például a példa cikk következő kódja: az Azure Storage használata egy HTTPS-proxyt ad meg a konstruktorhoz tartozó felhasználói hitelesítő adatokkal BlobClient . Ebben az esetben az objektum az azure.storage.blob kódtárból származik, amely az azure.core-on alapul.

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" }