NetCodeGroup.AddConnectAccess(String, CodeConnectAccess) Yöntem

Tanım

Belirtilen bağlantı erişimini geçerli kod grubuna ekler.

C#
public void AddConnectAccess(string originScheme, System.Security.Policy.CodeConnectAccess connectAccess);

Parametreler

originScheme
String

String Kodun düzeniyle eşleşecek düzeni içeren.

connectAccess
CodeConnectAccess

CodeConnectAccess Şemayı ve bağlantı noktası kodunun kaynak sunucusuna geri bağlanmak için kullanabileceğini belirten bir.

Özel durumlar

originScheme, null değeridir.

originScheme düzenlerde izin verilmeyen karakterler içerir.

-veya-

originScheme = AbsentOriginScheme ve connectAccess şeması olarak belirtir OriginScheme .

Örnekler

Aşağıdaki kod örneğinde bir nesnesi NetCodeGroupoluşturma ve ekleme CodeConnectAccess işlemleri gösterilmektedir.

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

Açıklamalar

Aynı origin schemeiçin birden çok CodeConnectAccess nesne ekleyebilirsiniz. Bir zaten bir origin scheme veya daha fazla ilişkili CodeConnectAccess nesne varsa, öğesini connectAccess belirtmenin null hiçbir etkisi yoktur. Kaynak düzeni ilişkili CodeConnectAccess nesnelere sahip değilse, öğesinin connectAccess belirtilmesinull, kaynak şemasıyla eşleşen originScheme kodun kaynak sunucusuna erişmesini engeller.

Şunlara uygulanır

Ürün Sürümler
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10