API 및 토큰 클라이언트를 위한 Microsoft Graph Java 6 프록시 설정
초기화 중에 Azure Identity의 Netty 경로와 미들웨어를 유지하는 Graph의 OkHttp 경로를 사용합니다.
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()는 Graph의 기본 미들웨어를 유지하면서 API 프록시를 추가합니다. 작업에는 최종 graph 클라이언트를 사용하십시오.
인증된 중개자는 두 경로 모두에서 계정 설정이 필요합니다. Azure ProxyOptions.setCredentials와 OkHttp proxyAuthenticator는 각자의 전송을 담당합니다. 캐시된 토큰은 구성되지 않은 토큰 경로를 숨길 수 있습니다.
소유한 전송은 구성 요소와 함께 유지하고 정리하십시오. 이전 TokenCredentialAuthProvider 빌더는 다른 SDK 세대를 대상으로 합니다.