Поделиться через


Метод User.IsUserMemberOf

Возвращает значение, указывающее, является ли текущий пользователь участником указанной группы.

Пространство имен: Microsoft.Office.InfoPath
Сборка: Microsoft.Office.InfoPath (в microsoft.office.infopath.dll)

Синтаксис

'Декларация
Public MustOverride Function IsUserMemberOf ( _
    groupName As String _
) As Boolean
'Применение
Dim instance As User
Dim groupName As String
Dim returnValue As Boolean

returnValue = instance.IsUserMemberOf(groupName)
public abstract bool IsUserMemberOf (
    string groupName
)

Параметры

  • groupName
    Имя группы в формате \.

Возвращаемое значение

true, если текущий пользователь участником указанной группы; в противном случае — false.

Исключения

Тип исключения Условие

ArgumentNullException

Этому методу передан параметр .

ArgumentException

Этому методу передан недопустимый параметр . Например, неправильный тип или формат.

Заметки

Даже если для метода IsUserMemberOf задан уровень безопасности 2, он не всегда доступен. Когда осуществляется вызов метода IsUserMemberOf, InfoPath сначала выполняет проверку безопасности, чтобы определить, разрешен ли доступ к этому методу. Проверка безопасности подтверждает, является или нет вызывающий код доверенным, и определяет его местоположение.

Если вызывающий код является доверенным (например, когда метод IsUserMemberOf вызывается из установленного или подписанного шаблона формы InfoPath или из доверенного внешнего кода, такого как исполняемый файл на локальном компьютере), InfoPath разрешает полный доступ к методу IsUserMemberOf.

Если вызывающий код не является доверенным, например, если вызов поступает из шаблона формы InfoPath на основе домена, InfoPath сначала проверяет, откуда выполнен вызов. Если вызов поступил из кода, не имеющего доверия в шаблоне формы InfoPath, по URL-адресу, такому как "https://www.contoso.com/example.xsn", следовательно, вызов поступил из зоны интрасети. InfoPath отклоняет доступ к методу IsUserMemberOf для всех не имеющих доверия вызовов, поступающих из зоны интрасети. Если вызов поступил с URL-адреса, такого как "http://contoso/example.xsn", следовательно, вызов поступил из зоны интрасети. Для вызовов из зоны интрасети, не имеющих доверия, InfoPath проверяет, разрешают ли настройки проверки подлинности пользователя Internet Explorer автоматический вход (только в зоне интрасети или для любого входа). Если в обозревателе Internet Explorer настроен автоматический вход, тогда InfoPath проверяет членство в группах пользователя. Если членство в группах является открытым, InfoPath разрешает полный доступ к методу IsUserMemberOf. Если членство в группах не является полностью открытым, InfoPath не отображает результаты. То есть InfoPath обрабатывает членство в группах так, как если бы они были скрытыми. Возвращаемое значение, в этом случае, всегда будет false, так как членство в группах не является открытым. InfoPath не сообщает, что в доступе отказано.

ЗаметкаЗаметка

Сведения о членстве в группах полностью открыты, если доступ к ним разрешен, и они отображаются для всех неанонимных пользователей. Если хотя бы одному неанонимному пользователю было отдельно отказано в доступе к сведениям о членстве, тогда сведения о членстве в группах не являются полностью открытыми.

Доступ к этому члену имеется только у форм, запускаемых на том же домене, что и открытая в настоящий момент форма, или у форм, которым были присвоены междоменные разрешения.

Доступ к этому типу или члену имеется только из программы, работающей в формах, открытых в Microsoft Office InfoPath 2007.

Пример

В следующем примере нажатие элемента управления отображает сведения, которые указывают, является ли текущий пользователь членом указанной группы.

public void CTRL1_Clicked(object sender, ClickedEventArgs e)
{
   MessageBox.Show(
      this.Application.User.IsUserMemberOf(
      "CONTOSO\\Users").ToString());
}
Public Sub CTRL1_Clicked(ByVal sender As Object, _
   ByVal e As ClickedEventArgs)
   MessageBox.Show( _
      Me.Application.User.IsUserMemberOf("CONTOSO\\Users").ToString())
End Sub

См. также

Ссылка

Класс User
Члены User
Пространство имен Microsoft.Office.InfoPath