你可以在没有用户名和密码的情况下为 Power BI 获取 tokensilent 吗
Can you acquiretokesilently for PowerBI without Username and Password
在 PowerBI 上搜索了一天零几个小时并阅读了 PowerBI webapp 示例后,我 运行 撞墙了,更改底层代码的最佳方法是什么
var tokenCache = new TokenCache();
var authContext = new AuthenticationContext(authorityUri, tokenCache);
var token = authContext.AcquireToken(resourceUri, clientId, new Uri(redirectUri)).AccessToken;
获取访问令牌静默 用于 power Bi 休息 API。我知道有一个 AcquireTokenSlientAsync 但是当我将我的应用程序注册为 WebApp 包括 cliendID 和 clientSecret 时它给我一个 403 错误。
目前,我的网络应用程序作为 NativeApp 在开发者 powerbi 上注册,并在每次请求时获取令牌。但是每次都会弹出
因为我正在使用访问令牌在网页上嵌入各种报告,如果有人能告诉我如何在不使用用户名和密码的情况下悄悄获取令牌,那就太好了。
我试过使用var token = authContext.AcquireTokenSlientAsync(resourceUri, clientCredential);
非常感谢任何见解。
根据您的评论,您可以使用在初始身份验证时获得的 "refresh" 令牌。该初始令牌应包括一个刷新令牌,使用刷新令牌,您可以使用 "AcquireTokenByRefreshToken" 方法并传入您需要访问令牌的新资源(power bi api)。
AuthenticationContext authContext = new AuthenticationContext(Authority, new AdalTokenCache(claim.Value));
var refresh_token = authContext.TokenCache.ReadItems().FirstOrDefault().RefreshToken;
ClientCredential credential = new ClientCredential(clientId, appKey);
var resp = authContext.AcquireTokenByRefreshToken(refresh_token, credential, "https://analysis.windows.net/powerbi/api");
希望对您有所帮助。
在 PowerBI 上搜索了一天零几个小时并阅读了 PowerBI webapp 示例后,我 运行 撞墙了,更改底层代码的最佳方法是什么
var tokenCache = new TokenCache();
var authContext = new AuthenticationContext(authorityUri, tokenCache);
var token = authContext.AcquireToken(resourceUri, clientId, new Uri(redirectUri)).AccessToken;
获取访问令牌静默 用于 power Bi 休息 API。我知道有一个 AcquireTokenSlientAsync 但是当我将我的应用程序注册为 WebApp 包括 cliendID 和 clientSecret 时它给我一个 403 错误。
目前,我的网络应用程序作为 NativeApp 在开发者 powerbi 上注册,并在每次请求时获取令牌。但是每次都会弹出
因为我正在使用访问令牌在网页上嵌入各种报告,如果有人能告诉我如何在不使用用户名和密码的情况下悄悄获取令牌,那就太好了。
我试过使用var token = authContext.AcquireTokenSlientAsync(resourceUri, clientCredential);
非常感谢任何见解。
根据您的评论,您可以使用在初始身份验证时获得的 "refresh" 令牌。该初始令牌应包括一个刷新令牌,使用刷新令牌,您可以使用 "AcquireTokenByRefreshToken" 方法并传入您需要访问令牌的新资源(power bi api)。
AuthenticationContext authContext = new AuthenticationContext(Authority, new AdalTokenCache(claim.Value)); var refresh_token = authContext.TokenCache.ReadItems().FirstOrDefault().RefreshToken; ClientCredential credential = new ClientCredential(clientId, appKey); var resp = authContext.AcquireTokenByRefreshToken(refresh_token, credential, "https://analysis.windows.net/powerbi/api");
希望对您有所帮助。