Я создаю аутентификацию пользователя на основе Azure Active Directory с использованием OpenId Connect.Я могу успешно войти на свой сайт, используя мою учетную запись в AAD.После входа в систему я хотел бы получить информацию о своей учетной записи через API AAD graph.
Я могу получить идентификатор пользователя с помощью ClaimsIdentity:
ClaimsIdentity identity = this.User.Identity as ClaimsIdentity;
string userID = identity.GetUserId();
И я могу получитьинформация пользователя через API графа:
public IUser GetProfileById(string userID)
{
ActiveDirectoryClient client = GetAadClient();
var user = client.Users.Where(x => x.ObjectId == userID).ExecuteSingleAsync().Result;
return user;
}
Однако идентификатор пользователя, который хранится в ClaimsPrincipal, по-видимому, не является идентификатором объекта в AAD, поэтому мне нужно будет найти какой-то другой способ полученияинформация о пользователе.Другой вариант может заключаться в том, чтобы найти пользователя по адресу электронной почты, но я также не могу выяснить, как это сделать.Любая помощь или предложения будут оценены.