Mga setting ng proxy ng Microsoft Graph Java 6 para sa mga kliyente ng API at token
Gamitin ang Netty na ruta ng Azure Identity at ang OkHttp na ruta ng Graph na nagpapanatili ng middleware sa panahon ng pagsisimula.
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);Gamitin ang umiiral na mga kredensyal ng tenant/kliyente. Kung pinapayagan ang mga pampublikong tagapamagitan para sa parehong token at mga endpoint ng Graph, nagbibigay ang listahan ng HTTP proxy ng mga kandidato para sa pinagsasaluhang HTTP proxy address na walang account. Ang mga scope ng pampublikong cloud at ang pinapayagang host na ipinapakita ay dapat tumugma sa inilaan na deployment sa cloud.
Ang httpClient(tokenHttp) ay nagbibigay ng ruta ng token ng Azure Identity. Pinapanatili ng GraphClientFactory.create() ang default na middleware ng Graph habang idinadagdag ang proxy ng API; gamitin ang huling kliyenteng graph para sa mga operasyon.
Ang isang awtentikadong tagapamagitan ay nangangailangan ng setup ng account sa parehong mga landas: ang Azure ProxyOptions.setCredentials at OkHttp proxyAuthenticator ay nagsisilbi sa kani-kanilang transport. Ang naka-cache na token ay maaaring magtago ng hindi naka-configure na landas ng token.
Panatilihin at linisin ang mga pag-aaring transport kasama ng component. Ang mas lumang mga builder na TokenCredentialAuthProvider ay tumatarget sa ibang henerasyon ng SDK.