Я новичок в Azure. Я опубликовал свой веб-сайт MVC 5 для Azure. У меня есть список имен групп и их objectid в словаре C#. Группы AD создаются в Azure AD Directory. Я пытаюсь найти, является ли зарегистрированный пользователь членом группы Azure AD. По какой-то причине я не увенчался успехом. Я получаю исключение NUllreferenceException, когда я использую функцию GraphConnection.IsMemberOf()
. Было бы здорово, если бы вы помогли мне решить эту проблему.Check Пользователь является членом Azure AD Group
Вот мой код
try
{
var userObjectId = ClaimsPrincipal.Current.FindFirst("http://schemas.microsoft.com/identity/claims/objectidentifier").Value;
var authContext = new AuthenticationContext(String.Format(CultureInfo.InvariantCulture, loginUrl, tenant));
var credential = new ClientCredential(clientId, appKey);
var result = authContext.AcquireToken(graphResourceId, credential);
var clientRequestId = Guid.NewGuid();
var graphSettings = new GraphSettings
{
ApiVersion = GraphConfiguration.GraphApiVersion
};
var graphConnection = new GraphConnection(result.AccessToken, clientRequestId, graphSettings);
if (string.IsNullOrEmpty(this.adGroupObjectId))
{
var groups = graphConnection.List<Group>(null, null);
if (groups != null && groups.Results != null)
{
var group = groups.Results.SingleOrDefault(r => r.DisplayName == adGroup);
if (group != null)
adGroupObjectId = group.ObjectId;
}
}
if (adGroupObjectId != null)
inGroup = graphConnection.IsMemberOf(adGroupObjectId, userObjectId);
return inGroup;
}
catch(Exception ex)
{
var message = string.Format("Unable to authorize AD user: {0} against group: {1}", ClaimsPrincipal.Current.Identity.Name, adGroup);
throw new Exception(message, ex);
}
Я получаю ошибку для всех методов, которые я пытаюсь использовать с графиком. например: graphConnection.Get (userObjectId); –