Tetapan proksi Microsoft Graph Java 6 untuk klien API dan token
Gunakan laluan Netty Azure Identity dan laluan OkHttp Graph yang mengekalkan middleware semasa permulaan.
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);Gunakan kelayakan penyewa/klien sedia ada. Jika perantara awam dibenarkan untuk kedua-dua titik akhir token dan Graph, senarai proksi HTTP menyediakan calon untuk alamat proksi HTTP kongsi tanpa akaun. Skop awan awam dan hos yang dibenarkan yang ditunjukkan mesti sepadan dengan penggunaan awan yang dimaksudkan.
httpClient(tokenHttp) menyediakan laluan token Azure Identity. GraphClientFactory.create() mengekalkan middleware lalai Graph sambil menambah proksi API; gunakan klien graph akhir untuk operasi.
Perantara yang disahkan memerlukan persediaan akaun pada kedua-dua laluan: Azure ProxyOptions.setCredentials dan OkHttp proxyAuthenticator melayani pengangkutan masing-masing. Token yang dicache boleh menyembunyikan laluan token yang belum dikonfigurasikan.
Kekalkan dan bersihkan pengangkutan milik anda bersama komponen. Pembina TokenCredentialAuthProvider yang lebih lama menyasarkan generasi SDK yang lain.