Sdílet prostřednictvím


CodeConnectAccess Třída

Definice

Určuje přístup k síťovým prostředkům, který je udělen kódu.

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
Dědičnost
CodeConnectAccess
Atributy

Příklady

Následující příklad kódu vytvoří NetCodeGroup objekt a přidá ho na úroveň zásad uživatele.


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();
}

Poznámky

Tato třída se používá ve spojení s NetCodeGroup třídou k řízení způsobu, jakým se může prováděcí kód připojit zpět k webu, ze který byl stažen. Tyto třídy poskytují programovou kontrolu WebPermission nad uděleným pro spouštění kódu, který řídí, jaká schémata a porty může kód používat přístup ke své původní lokalitě. Můžete zadat schéma a páry portů, které jsou povoleny na základě schématu v adrese URL, odkud kód pochází.

Pokud chcete vytvořit CodeConnectAccess objekt založený na schématu původu kódu, použijte metodu CreateOriginSchemeAccess .

Chcete-li vytvořit CodeConnectAccess objekt, který může používat jakékoli schéma, ale je omezen portem, použijte metodu CreateAnySchemeAccess .

Konstruktory

CodeConnectAccess(String, Int32)

Inicializuje novou instanci CodeConnectAccess třídy.

Pole

AnyScheme

Obsahuje řetězcovou hodnotu, která představuje zástupné znaky schématu.

DefaultPort

Obsahuje hodnotu použitou k reprezentaci výchozího portu.

OriginPort

Obsahuje hodnotu, která se používá k reprezentaci hodnoty portu v identifikátoru URI, ze kterého kód pochází.

OriginScheme

Obsahuje hodnotu použitou k reprezentaci schématu v adrese URL, ze které kód pochází.

Vlastnosti

Port

Získá port reprezentovaný aktuální instancí.

Scheme

Získá schéma identifikátoru URI reprezentované aktuální instancí.

Metody

CreateAnySchemeAccess(Int32)

CodeConnectAccess Vrátí instanci, která představuje přístup k zadanému portu pomocí libovolného schématu.

CreateOriginSchemeAccess(Int32)

CodeConnectAccess Vrátí instanci, která představuje přístup k zadanému portu pomocí schématu původu kódu.

Equals(Object)

Vrátí hodnotu označující, zda dva CodeConnectAccess objekty představují stejné schéma a port.

GetHashCode()

Slouží jako funkce hash pro určitý typ.

GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro