Compartilhar via


ReflectionPermission.IsSubsetOf(IPermission) Método

Definição

Determina se a permissão atual é um subconjunto da permissão especificada.

public:
 override bool IsSubsetOf(System::Security::IPermission ^ target);
public override bool IsSubsetOf (System.Security.IPermission target);
override this.IsSubsetOf : System.Security.IPermission -> bool
Public Overrides Function IsSubsetOf (target As IPermission) As Boolean

Parâmetros

target
IPermission

Uma permissão que deve ser testada quanto à relação de subconjunto. Essa permissão deve ser do mesmo tipo da permissão atual.

Retornos

Boolean

true se a permissão atual for um subconjunto da permissão especificada; caso contrário, false.

Exceções

O parâmetro target não é null e não é do mesmo tipo que a permissão atual.

Exemplos

O exemplo de código a seguir mostra o comportamento do IsSubsetOf método. Este exemplo faz parte de um exemplo maior fornecido para a ReflectionPermission classe.

Observação

O exemplo de código destina-se a mostrar o comportamento do método, não para demonstrar seu uso. Em geral, os métodos de classes de permissão são usados pela infraestrutura de segurança; normalmente, eles não são usados em aplicativos.

private static void IsSubsetOfDemo()
{
    ReflectionPermission memberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess);
    ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);

    if (restrictedMemberAccessPerm.IsSubsetOf(memberAccessPerm))
    {
        Console.WriteLine(restrictedMemberAccessPerm.Flags + " is a subset of " +
            memberAccessPerm.Flags);
    }
    else
    {
        Console.WriteLine(restrictedMemberAccessPerm.Flags + " is not a subset of " +
            memberAccessPerm.Flags);
    }
}
Private Shared Sub IsSubsetOfDemo()

    Dim memberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.MemberAccess)
    Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
    If restrictedMemberAccessPerm.IsSubsetOf(memberAccessPerm) Then
        Console.WriteLine(restrictedMemberAccessPerm.Flags + " is a subset of " + memberAccessPerm.Flags)
    Else
        Console.WriteLine(restrictedMemberAccessPerm.Flags.ToString() + _
        " is not a subset of " + memberAccessPerm.Flags.ToString())
    End If

End Sub

Comentários

A permissão atual é um subconjunto da permissão especificada se a permissão atual especificar um conjunto de operações totalmente contido pela permissão especificada. Por exemplo, uma permissão que representa o acesso ao C:\example.txt é um subconjunto de uma permissão que representa o acesso ao C:\. Se esse método retornar true, a permissão atual não representará mais acesso ao recurso protegido do que a permissão especificada.

Aplica-se a