Konfigurieren von Proxys für die Azure-Bibliotheken
Eine Proxy Server-URL weist die Form http[s]://[username:password@]<ip_address_or_domain>:<port>/ auf, in der die Kombination aus Benutzername und Kennwort („username:password“) optional ist.
Anschließend können Sie einen Proxy global konfigurieren, indem Sie Umgebungsvariablen verwenden, oder Sie können einen Proxy angeben, indem Sie ein Argument mit dem Namen proxies an einen einzelnen Clientkonstruktor oder eine Vorgangsmethode übergeben.
Globale Konfiguration
Um einen Proxy global für Ihr Skript oder Ihre App zu konfigurieren, definieren Sie HTTP_PROXY- oder HTTPS_PROXY-Umgebungsvariablen mit der Server-URL. Diese Variablen funktionieren in jeder Version der Azure-Bibliotheken.
Diese Umgebungsvariablen werden ignoriert, wenn Sie den Parameter use_env_settings=False an einen Clientobjektkonstruktor oder eine Vorgangsmethode übergeben.
Aus Python-Code
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"
Über die CLI
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
Konfiguration pro Client oder pro Methode
Um einen Proxy für ein bestimmtes Clientobjekt oder eine bestimmte Vorgangsmethode zu konfigurieren, geben Sie einen Proxyserver mit einem Argument mit dem Namen proxies an.
Der folgende Code aus dem Artikel Beispiel: Verwenden von Azure-Speicher gibt z. B. einen HTTPS-Proxy mit Benutzeranmeldeinformationen mit dem BlobClient-Konstruktor an. In diesem Fall stammt das Objekt aus der azure.storage.blob-Bibliothek, die auf azure.core basiert.
from azure.identity import DefaultAzureCredential
# Import the client object from the SDK library
from azure.storage.blob import BlobClient
credential = DefaultAzureCredential()
storage_url = "your_url"
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" }