var address = new java.net.InetSocketAddress("proxy.example", 8080);
var tokenProxy = new com.azure.core.http.ProxyOptions(
    com.azure.core.http.ProxyOptions.Type.HTTP, address);
var tokenHttp = new com.azure.core.http.netty.NettyAsyncHttpClientBuilder()
    .proxy(tokenProxy).build();
var credential = new com.azure.identity.ClientSecretCredentialBuilder()
    .tenantId(tenantId).clientId(clientId).clientSecret(clientSecret)
    .httpClient(tokenHttp).build();

String[] scopes = {"https://graph.microsoft.com/.default"};
String[] allowedHosts = {"graph.microsoft.com"};
var auth = new com.microsoft.kiota.authentication.AzureIdentityAuthenticationProvider(
    credential, allowedHosts, scopes);
var graphHttp = com.microsoft.graph.core.requests.GraphClientFactory.create()
    .proxy(new java.net.Proxy(java.net.Proxy.Type.HTTP, address))
    .build();
var graph = new com.microsoft.graph.serviceclient.GraphServiceClient(auth, graphHttp);

विद्यमान टेनंट/क्लायंट क्रेडेन्शियल्स वापरा. जिथे टोकन आणि Graph दोन्ही एंडपॉइंटसाठी सार्वजनिक मध्यस्थांना परवानगी आहे, तिथे HTTP प्रॉक्सी सूची सामायिक खाते-रहित HTTP प्रॉक्सी पत्त्यासाठी उमेदवार पुरवते. दर्शविलेले पब्लिक-क्लाउड स्कोप आणि परवानगी असलेला होस्ट इच्छित क्लाउड डिप्लॉयमेंटशी जुळले पाहिजेत.

httpClient(tokenHttp) Azure Identity चा टोकन मार्ग पुरवतो. GraphClientFactory.create() API प्रॉक्सी जोडताना Graph चे डीफॉल्ट मिडलवेअर टिकवते; क्रियांसाठी अंतिम graph क्लायंट वापरा.

प्रमाणित मध्यस्थाला दोन्ही मार्गांवर खाते सेटअप आवश्यक आहे: Azure ProxyOptions.setCredentials आणि OkHttp proxyAuthenticator त्यांच्या संबंधित ट्रान्सपोर्टना सेवा देतात. कॅश केलेला टोकन कॉन्फिगर न केलेला टोकन मार्ग लपवू शकतो.

स्वतःच्या मालकीचे ट्रान्सपोर्ट घटकासह ठेवा आणि साफ करा. जुने TokenCredentialAuthProvider बिल्डर दुसऱ्या SDK पिढीला लक्ष्य करतात.

संबंधित लेख