Delen via


Proxy's configureren voor de Azure SDK voor Python

Als uw organisatie het gebruik van een proxyserver nodig heeft voor toegang tot internetbronnen, moet u een omgevingsvariabele instellen met de proxyservergegevens voor het gebruik van de Azure SDK voor Python. Als u de omgevingsvariabelen (HTTP_PROXY en HTTPS_PROXY) instelt, zorgt u ervoor dat de Azure SDK voor Python de proxyserver tijdens runtime gebruikt.

Een URL van een proxyserver heeft het formulier http[s]://[username:password@]<ip_address_or_domain>:<port>/ waarin de combinatie van gebruikersnaam en wachtwoord optioneel is.

Vervolgens kunt u een proxy globaal configureren met behulp van omgevingsvariabelen of u kunt een proxy opgeven door een argument met de naam proxies door te geven aan een afzonderlijke clientconstructor of -bewerkingsmethode.

Globale configuratie

Als u een proxy globaal wilt configureren voor uw script of app, definieert HTTP_PROXY of HTTPS_PROXY omgevingsvariabelen met de server-URL. Deze variabelen werken met elke versie van de Azure-bibliotheken. Houd er rekening mee dat HTTPS_PROXY dit geen proxy betekent HTTPS , maar de proxy voor https:// aanvragen.

Deze omgevingsvariabelen worden genegeerd als u de parameter use_env_settings=False doorgeeft aan een clientobjectconstructor of -bewerkingsmethode.

Instellen vanaf de opdrachtregel

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

Instellen in Python-code

U kunt proxy-instellingen instellen met behulp van omgevingsvariabelen, zonder dat er aangepaste configuratie nodig is.

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"

Aangepaste configuratie

Instellen in Python-code per client of per methode

Voor aangepaste configuratie kunt u een proxy opgeven voor een specifiek clientobject of een specifieke bewerkingsmethode. Geef een proxyserver op met een argument met de naam proxies.

De volgende code uit het artikel Voorbeeld: Gebruik Azure Storage om een HTTPS-proxy met gebruikersreferenties met de BlobClient constructor op te geven. In dit geval is het object afkomstig van de azure.storage.blob-bibliotheek, die is gebaseerd op 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" }