1
Web API、AzureユーザーとのMVCアプリケーションの統合OWINを使用して認証が行われます。認証Cookieを削除し、api呼び出しのヘッダーにトークンを渡します。どうやってするの? Azure AD認証にMSAL.csファイルを使用します。 apiコールヘッダーにトークンを渡したい最初にMVCアプリケーションページをロードし、認証呼び出し後Web APIメソッドを呼び出します。 私はあなたがウェブAPIを呼び出したい場合はASP.NetのOpenID接続OWINミドルウェアを使用して紺碧の広告からユーザーが初めてサインした後、あなたはトークンを追加することができますMVCとWeb APIでの認証のためのヘッダーにトークンを渡す
private async Task OnAuthorizationCodeReceived(AuthorizationCodeReceivedNotification notification)
{
// Extract the code from the response notification
var code = notification.Code;
string signedInUserID = notification.AuthenticationTicket.Identity.FindFirst(ClaimTypes.NameIdentifier).Value;
TokenCache userTokenCache = new MSALSessionCache(signedInUserID, notification.OwinContext.Environment["System.Web.HttpContextBase"] as HttpContextBase).GetMsalCacheInstance();
ConfidentialClientApplication cca = new ConfidentialClientApplication(ClientId, Authority, RedirectUri, new ClientCredential(ClientSecret), userTokenCache, null);
try
{
AuthenticationResult result = await cca.AcquireTokenByAuthorizationCodeAsync(code, Scopes);
}
catch (Exception ex)
{
//TODO: Handle
throw;
}
}
ようこそStackOverflow。 [最小限で完全で検証可能な例](https://stackoverflow.com/help/mcve)を入力してください。そうしないと、この質問は終了する可能性があります。質問に関連する詳細(たとえば、クッキーとヘッダー名)と、これまでに試したことを含めてください。 – NightOwl888