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);

Бар tenant/client ыйгарым укуктарын колдонуңуз. Токен жана Graph четки чекиттеринин экөө үчүн тең ачык ортомчуларга жол берилген жерде HTTP прокси тизмеси жалпы аккаунтсуз HTTP прокси дареги үчүн талапкерлерди сунуштайт. Көрсөтүлгөн ачык булут scope'тору жана уруксат берилген хост пландалган булут жайгаштырууга туура келиши керек.

httpClient(tokenHttp) Azure Identity'нин токен маршрутун камсыз кылат. GraphClientFactory.create() API проксиин кошуу менен Graph'тын демейки middleware'ин сактайт; операциялар үчүн акыркы graph кардарын колдонуңуз.

Аутентификацияланган ортомчу эки жолдо тең аккаунтту жөндөөнү талап кылат: Azure ProxyOptions.setCredentials жана OkHttp proxyAuthenticator өз транспортторуна кызмат кылат. Кэштелген токен конфигурацияланбаган токен жолун жашырышы мүмкүн.

Ээлик транспортторду компонент менен бирге сактаңыз жана тазалаңыз. Эски TokenCredentialAuthProvider куруучулары SDK'нын башка муунуна арналган.

Тектеш макалалар