Azure Active Directory があり、Web Api には、Azure に登録したアプリケーションとクライアント証明書を使用して、Azure Graph Api からトークンを取得できるコードがあります。ここに私が今使っているコードがあります:
public static string AcquireServiceToken()
{
var authority = string.Format(_authority, "common");
var authContext = new AuthenticationContext(authority);
var result = authContext.AcquireToken(_serviceTokenResourceId, new ClientAssertionCertificate(_serviceTokenClientId, GetClientCertificate(_certThumbprint)));
return result.AccessToken;
}
このコード スニペットは問題なく動作します。必要なのは、ログインしているユーザーのコンテキストを持つより具体的なトークンです。基本的には、ユーザー名とパスワードを渡して、Azure から Graph トークンを取得できるようにする必要があります。何か案は?