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

Uża l-kredenzjali eżistenti tat-tenant/klijent. Fejn huma permessi intermedjarji pubbliċi kemm għat-token kif ukoll għall-endpoints ta' Graph, il-lista tal-proxy HTTP tipprovdi kandidati għall-indirizz HTTP tal-proxy kondiviż mingħajr kont. L-ambiti tal-cloud pubbliku u l-host permess murija jridu jaqblu mal-varar fil-cloud maħsub.

httpClient(tokenHttp) jipprovdi r-rotta tat-token ta' Azure Identity. GraphClientFactory.create() iżomm il-middleware default ta' Graph filwaqt li jżid il-proxy tal-API; uża l-klijent finali graph għall-operazzjonijiet.

Intermedjarju awtentikat jeħtieġ setup tal-kont fiż-żewġ toroq: Azure ProxyOptions.setCredentials u OkHttp proxyAuthenticator jaqdu t-trasport rispettiv tagħhom. Token fil-cache jista' jaħbi rotta tat-token mhux konfigurata.

Żomm u naddaf it-trasporti proprji mal-komponent. Bnejja TokenCredentialAuthProvider eqdem jimmiraw għal ġenerazzjoni oħra tal-SDK.

Artikli relatati