CodeConnectAccess Klasse

Definition

Gibt den Zugriff auf Netzwerkressourcen an, der Code gewährt wird.

public ref class CodeConnectAccess
public class CodeConnectAccess
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeConnectAccess
type CodeConnectAccess = class
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeConnectAccess = class
Public Class CodeConnectAccess
Vererbung
CodeConnectAccess
Attribute

Beispiele

Im folgenden Codebeispiel wird ein NetCodeGroup Objekt erstellt und der Benutzerrichtlinienebene hinzugefügt.


static void SetNetCodeGroupAccess()
{
    String^ userPolicyLevel = "User";
    // Locate the User policy level.
    PolicyLevel^ level = nullptr;
    System::Collections::IEnumerator^ ph = 
        System::Security::SecurityManager::PolicyHierarchy();
    while(ph->MoveNext())
    {
        level = (PolicyLevel^)ph->Current;
        if (level->Label == userPolicyLevel)
        {
            break;       
        }
    }
    if (level->Label != userPolicyLevel)
        throw gcnew ApplicationException("Could not find User policy level.");

    IMembershipCondition^ membership =
        gcnew UrlMembershipCondition("http://www.contoso.com/*");
    NetCodeGroup^ codeGroup = gcnew NetCodeGroup(membership);
    // Delete default settings.
    codeGroup->ResetConnectAccess();
    // Create an object that represents access to the FTP scheme and 
    // default port.
    CodeConnectAccess^ CodeAccessFtp = 
        gcnew CodeConnectAccess(Uri::UriSchemeFtp, 
        CodeConnectAccess::DefaultPort);
    // Create an object that represents access to the HTTPS scheme 
    // and default port.
    CodeConnectAccess^ CodeAccessHttps = 
        gcnew CodeConnectAccess(Uri::UriSchemeHttps, 
        CodeConnectAccess::DefaultPort);
    // Create an object that represents access to the origin 
    // scheme and port.
    CodeConnectAccess^ CodeAccessOrigin = 
        CodeConnectAccess::CreateOriginSchemeAccess
        (CodeConnectAccess::OriginPort);
    // Add connection access objects to the NetCodeGroup object.
    codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessFtp);
    codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessHttps);
    codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessOrigin);
    // Provide name and description information for caspol.exe tool.
    codeGroup->Name = "ContosoHttpCodeGroup";
    codeGroup->Description = "Code originating from contoso.com can" +
        " connect back using the FTP or HTTPS.";
    // Add the code group to the User policy's root node.
    level->RootCodeGroup->AddChild(codeGroup);
    // Save the changes to the policy level.
    System::Security::SecurityManager::SavePolicy();
}
public static void SetNetCodeGroupAccess()
{
    const string userPolicyLevel = "User";
    // Locate the User policy level.
    PolicyLevel level = null;
    System.Collections.IEnumerator ph =
        System.Security.SecurityManager.PolicyHierarchy();
    while(ph.MoveNext())
    {
        level = (PolicyLevel)ph.Current;
        if( level.Label == userPolicyLevel )
        {
            break;
        }
    }
    if (level.Label != userPolicyLevel)
        throw new ApplicationException("Could not find User policy level.");

    IMembershipCondition membership =
        new UrlMembershipCondition(@"http://www.contoso.com/*");
    NetCodeGroup codeGroup = new NetCodeGroup(membership);
    // Delete default settings.
    codeGroup.ResetConnectAccess();
    // Create an object that represents access to the FTP scheme and default port.
    CodeConnectAccess a1 = new CodeConnectAccess(Uri.UriSchemeFtp, CodeConnectAccess.DefaultPort);
    // Create an object that represents access to the HTTPS scheme and default port.
    CodeConnectAccess a2 = new CodeConnectAccess(Uri.UriSchemeHttps, CodeConnectAccess.DefaultPort);
    // Create an object that represents access to the origin scheme and port.
    CodeConnectAccess a3 = CodeConnectAccess.CreateOriginSchemeAccess(CodeConnectAccess.OriginPort);
    // Add connection access objects to the NetCodeGroup object.
    codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a1);
    codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a2);
    codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a3);
    // Provide name and description information for caspol.exe tool.
    codeGroup.Name = "ContosoHttpCodeGroup";
    codeGroup.Description = "Code originating from contoso.com can connect back using the FTP or HTTPS.";
    // Add the code group to the User policy's root node.
    level.RootCodeGroup.AddChild(codeGroup);
    // Save the changes to the policy level.
    System.Security.SecurityManager.SavePolicy();
}

Hinweise

Diese Klasse wird in Verbindung mit der NetCodeGroup Klasse verwendet, um zu steuern, wie der Ausführungscode eine Verbindung mit der Website herstellen kann, aus der sie heruntergeladen wurde. Diese Klassen bieten programmgesteuerte Kontrolle über das WebPermission Ausführen von Code, der steuert, welche Schemas und Ports der Code auf seine Ursprungswebsite zugreifen kann. Sie können Schema- und Portpaare angeben, die basierend auf dem Schema in der URL zulässig sind, in der der Code stammt.

Um ein CodeConnectAccess Objekt basierend auf dem Ursprungsschema des Codes zu erstellen, verwenden Sie die CreateOriginSchemeAccess Methode.

Um ein Objekt zu erstellen, das ein CodeConnectAccess beliebiges Schema verwenden kann, aber durch Port eingeschränkt ist, verwenden Sie die CreateAnySchemeAccess Methode.

Konstruktoren

CodeConnectAccess(String, Int32)

Initialisiert eine neue Instanz der CodeConnectAccess-Klasse.

Felder

AnyScheme

Enthält den Zeichenfolgenwert, der den Schemaplatzhalter darstellt.

DefaultPort

Enthält den Wert, der zum Darstellen des Standardports verwendet wird.

OriginPort

Enthält den Wert, der zum Darstellen des Portwerts im URI verwendet wird, von dem der Code stammt.

OriginScheme

Enthält den Wert, der zum Darstellen des Schemas in der URL verwendet wird, von der der Code stammt.

Eigenschaften

Port

Ruft den durch die aktuelle Instanz dargestellten Port ab.

Scheme

Ruft das durch die aktuelle Instanz dargestellte URI-Schema ab.

Methoden

CreateAnySchemeAccess(Int32)

Gibt eine CodeConnectAccess-Instanz zurück, die Zugriff auf den angegebenen Port mit einem beliebigen Schema darstellt.

CreateOriginSchemeAccess(Int32)

Gibt eine CodeConnectAccess-Instanz zurück, die Zugriff auf den angegebenen Port mit dem Ursprungsschema des Codes darstellt.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob zwei CodeConnectAccess-Objekte dasselbe Schema und denselben Port darstellen.

GetHashCode()

Dient als Hashfunktion für einen bestimmten Typ.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für