Setări de proxy Microsoft Graph Java 6 pentru clienții API și de token
Folosiți ruta Netty din Azure Identity și ruta OkHttp din Graph care păstrează middleware-ul în timpul inițializării.
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);Folosiți acreditările existente de tenant/client. Acolo unde intermediarii publici sunt permisivi atât pentru punctul final al tokenului, cât și pentru Graph, lista de proxy-uri HTTP oferă candidați pentru adresa HTTP partajată fără cont. Domeniile de aplicare din cloudul public și gazda permisă afișate trebuie să corespundă implementării cloud preconizate.
httpClient(tokenHttp) furnizează ruta tokenului din Azure Identity. GraphClientFactory.create() păstrează middleware-ul implicit din Graph adăugând proxy-ul API; folosiți clientul final graph pentru operațiuni.
Un intermediar autentificat necesită configurarea contului pe ambele căi: Azure ProxyOptions.setCredentials și OkHttp proxyAuthenticator deservesc transporturile respective. Un token memorat în cache poate ascunde o cale de token neconfigurată.
Păstrați și curățați transporturile proprii împreună cu componenta. Constructorii TokenCredentialAuthProvider mai vechi vizează o altă generație de SDK.