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
domain\groupname という形式のグループ名。
戻り値
現在のユーザーが指定されたグループのメンバである場合は true、それ以外の場合は false。
例外処理
例外の種類 | 条件 |
---|---|
このメソッドに渡されたパラメータは null です。 |
|
このメソッドに渡されたパラメータは無効です。たとえば、型または形式が正しくありません。 |
コメント
IsUserMemberOf メソッドはセキュリティ レベル 2 と設定されていますが、常にアクセス可能とは限りません。IsUserMemberOf メソッドの呼び出しが行われると、InfoPath は最初にセキュリティ チェックを実行して、このメソッドへのアクセスを許可するかどうかを確認します。セキュリティ チェックでは、呼び出し元であるコードが信頼されているかどうかを確認し、呼び出し元コードの場所を確認します。
呼び出し元コードが信頼されている場合 (たとえば、IsUserMemberOf メソッドが、インストールまたは署名された Infopath フォーム テンプレートから呼び出された場合や、ローカル コンピュータ上の実行可能ファイルなどの信頼されている外部コードから呼び出された場合)、InfoPath は IsUserMemberOf メソッドへのフル アクセスを許可します。
呼び出し元コードが信頼されていない場合 (たとえば、呼び出しがドメインベースの InfoPath フォーム テンプレートから行われている場合)、InfoPath は最初に呼び出しがどこから行われているかを確認します。"https://www.contoso.com/example.xsn" などの URL にある InfoPath フォーム テンプレートで信頼されていないコードからである場合、その呼び出しはインターネット ゾーンからの呼び出しです。InfoPath は、インターネット ゾーンから行われる信頼されていないすべての呼び出しに対して、IsUserMemberOf メソッドへのアクセスを拒否します。呼び出しが "http://contoso/example.xsn" などの URL からである場合、その呼び出しはイントラネット ゾーンからの呼び出しです。イントラネット ゾーンからの信頼されていない呼び出しに対して、InfoPath は、Internet Explorer のユーザー認証の設定で、自動ログオンが (イントラネット ゾーンのみで、またはすべてのログオンについて) 許可されているかどうかを確認します。Internet Explorer で自動ログオンが構成されている場合、InfoPath はユーザーのグループ メンバシップを調べます。グループ メンバシップがパブリックである場合、InfoPath は IsUserMemberOf メソッドにフル アクセスを許可します。グループ メンバシップが完全にはパブリックではない場合、InfoPath は結果を非表示にします。つまり、InfoPath はグループ メンバシップを非表示として扱います。この場合、グループ メンバシップがパブリックでないため、戻り値は常に false です。InfoPath はアクセスが拒否されたことを報告しません。
メモ : |
---|
グループ メンバシップ情報へのアクセスが許可されており、匿名ユーザー以外のすべてのユーザーがその情報を表示できる場合、グループ メンバシップ情報は完全にパブリックです。匿名ユーザー以外のユーザーが 1 人でもメンバシップ情報へのアクセスを拒否されている場合、そのグループ メンバシップ情報は完全にはパブリックではありません。 |
このメンバは、現在開いているフォームと同じドメイン内で実行されているフォーム、またはドメインを越えたアクセス許可を付与されているフォームだけがアクセスできます。
この型またはメンバは、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