DnsPermissionAttribute Klasa

Definicja

Określa uprawnienie do żądania informacji z serwerów nazw domen.Specifies permission to request information from Domain Name Servers.

public ref class DnsPermissionAttribute sealed : System::Security::Permissions::CodeAccessSecurityAttribute
[System.AttributeUsage(System.AttributeTargets.Assembly | System.AttributeTargets.Class | System.AttributeTargets.Constructor | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true, Inherited=false)]
[System.Serializable]
public sealed class DnsPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute
type DnsPermissionAttribute = class
    inherit CodeAccessSecurityAttribute
Public NotInheritable Class DnsPermissionAttribute
Inherits CodeAccessSecurityAttribute
Dziedziczenie
Atrybuty

Przykłady

Poniższy przykład używa DnsPermissionAttribute, aby zastosować deklaratywne zabezpieczenia do klasy niestandardowej.The following example uses DnsPermissionAttribute to apply declarative security to a custom class.

//Uses the DnsPermissionAttribute to restrict access only to those who have permission.

[DnsPermission(SecurityAction::Demand,Unrestricted=true)]
public ref class MyClass
{
public:
   static IPAddress^ GetIPAddress()
   {
      IPAddress^ ipAddress = Dns::Resolve( "localhost" )->AddressList[ 0 ];
      return ipAddress;
   }

};

int main()
{
   try
   {
      
      //Grants Access.
      Console::WriteLine( " Access granted\n The local host IP Address is :{0}", MyClass::GetIPAddress() );
   }
   // Denies Access.
   catch ( SecurityException^ securityException ) 
   {
      Console::WriteLine( "Access denied" );
      Console::WriteLine( securityException->ToString() );
   }

}

//Uses the DnsPermissionAttribute to restrict access only to those who have permission.
[DnsPermission(SecurityAction.Demand, Unrestricted = true)]
public class MyClass
{
    public static IPAddress GetIPAddress()
    {
        IPAddress ipAddress = Dns.Resolve("localhost").AddressList[0];
        return ipAddress;
    }
    public static void Main()
    {
        try
        {
            //Grants Access.
            Console.WriteLine(" Access granted\n The local host IP Address is :" + 
                                  MyClass.GetIPAddress().ToString());
        }
        // Denies Access.
        catch (SecurityException securityException)
        {
            Console.WriteLine("Access denied");	
            Console.WriteLine(securityException.ToString());
        }
' Uses the DnsPermissionAttribute to restrict access only to those who have permission.
<DnsPermission(SecurityAction.Demand, Unrestricted := true)>  _
Public Class MyClass1
   
   Public Shared Function GetIPAddress() As IPAddress
      Dim ipAddress As IPAddress = Dns.Resolve("localhost").AddressList(0)
      Return ipAddress
   End Function 'GetIPAddress
   
   Public Shared Sub Main()
      Try
         ' Grants Access.
         Console.WriteLine(("Access granted" + ControlChars.NewLine + " The local host IP Address is :" + MyClass1.GetIPAddress().ToString()))
      ' Denies Access.
      Catch securityException As SecurityException
         Console.WriteLine("Access denied")
         Console.WriteLine(securityException.ToString())
      End Try
   End Sub
End Class

Uwagi

Informacje o zabezpieczeniach zadeklarowane przez DnsPermissionAttribute są przechowywane w metadanych obiektu docelowego atrybutu, który jest klasą, do której ma zastosowanie DnsPermissionAttribute.The security information declared by DnsPermissionAttribute is stored in the metadata of the attribute target, which is the class to which the DnsPermissionAttribute is applied. System następnie uzyskuje dostęp do tych informacji w czasie wykonywania.The system then accesses this information at run time. SecurityAction, który jest przesyłany do konstruktora, określa dozwolone cele DNS.The SecurityAction that is passed to the constructor determines the allowable DNS targets.

Te atrybuty zabezpieczeń są używane tylko w celu zapewnienia bezpieczeństwa deklaratywnego.These security attributes are used only for Declarative Security. W celu zapewnienia bezpieczeństwanależy użyć odpowiedniej klasy DnsPermission.For Imperative Security, use the corresponding DnsPermission class.

Dostęp zabezpieczeń jest w pełni ograniczony lub w pełni ograniczany.Security access is either fully restricted or fully unrestricted. Ustaw właściwość Unrestricted na true, aby udzielić dostępu lub false braku dostępu.Set the Unrestricted property to true to grant access, or false for no access. Ustaw tę właściwość jako parametr nazwany.Set this property as a named parameter.

Aby uzyskać więcej informacji o korzystaniu z atrybutów, zobacz atrybuty.For more information about using attributes, see Attributes.

Konstruktory

DnsPermissionAttribute(SecurityAction)

Inicjuje nowe wystąpienie klasy DnsPermissionAttribute z określoną wartością SecurityAction.Initializes a new instance of the DnsPermissionAttribute class with the specified SecurityAction value.

Właściwości

Action

Pobiera lub ustawia akcję zabezpieczeń.Gets or sets a security action.

(Odziedziczone po SecurityAttribute)
TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Odziedziczone po Attribute)
Unrestricted

Pobiera lub ustawia wartość wskazującą, czy pełny (nieograniczony) uprawnienia do zasobu chronionego przez atrybut jest zadeklarowany.Gets or sets a value indicating whether full (unrestricted) permission to the resource protected by the attribute is declared.

(Odziedziczone po SecurityAttribute)

Metody

CreatePermission()

Tworzy i zwraca nowe wystąpienie klasy DnsPermission.Creates and returns a new instance of the DnsPermission class.

Equals(Object)

Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi.Returns a value that indicates whether this instance is equal to a specified object.

(Odziedziczone po Attribute)
GetHashCode()

Zwraca kod skrótu dla tego wystąpienia.Returns the hash code for this instance.

(Odziedziczone po Attribute)
GetType()

Pobiera Type bieżącego wystąpienia.Gets the Type of the current instance.

(Odziedziczone po Object)
IsDefaultAttribute()

Gdy jest zastępowany w klasie pochodnej, wskazuje, czy wartość tego wystąpienia jest wartością domyślną klasy pochodnej.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Odziedziczone po Attribute)
Match(Object)

Gdy jest zastępowany w klasie pochodnej, zwraca wartość wskazującą, czy to wystąpienie jest zgodne z określonym obiektem.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy skróconą kopię bieżącego Object.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg, który reprezentuje bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Jawne implementacje interfejsu

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.Maps a set of names to a corresponding set of dispatch identifiers.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie dla obiektu, którego można użyć do uzyskania informacji o typie dla interfejsu.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt.Provides access to properties and methods exposed by an object.

(Odziedziczone po Attribute)

Dotyczy

Zobacz też