Если пользователь входит в группу пользователей домена, он собирает всех пользователей в этой группе пользователей и циклически изменяет список, чтобы попытаться найти текущего пользователя. Если пользователь найден, он возвращает true
, в противном случае возвращает false
.
Проверьте эту статью Проверьте, существует ли пользователь в Active Directory , который включает в себя некоторые проблемы безопасности для достижения требования.
// Get ad users in the groups. Since MOSS does
// not support nested groups
// this will always be a collection of AD users
// and groups
foreach (SPUser user in group.Users)
{
// Check if this is a Group
if (!user.IsDomainGroup)
{
// Verify if the user name matches the user name in group
if (user.LoginName.ToUpper().Equals(upperCaseUserName))
{
// if a match is confirmed, return from the method.
// There is no need to continue
userIsInGroup = true;
return;
}
}
else {
// If the AD entity is a User Group,
// then check for users in that group
if (IsUserInADGroup(web, user.LoginName,
username, out reachedMax))
{
userIsInGroup = true;
return;
}
}
Надеюсь, что это поможет ..