CodeConnectAccess 类  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定授予代码的网络资源访问权限。
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
		- 继承
 - 
				CodeConnectAccess
 
- 属性
 
示例
下面的代码示例创建 一个 NetCodeGroup 对象,并将其添加到用户策略级别。
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();
}
	注解
此类与 类结合使用, NetCodeGroup 以控制执行代码如何连接回从中下载它的站点。 这些类提供对授予给执行代码的 WebPermission 编程控制,这些代码控制代码可以使用哪些方案和端口访问其源站点。 可以根据代码源自的 URL 中的方案指定允许的方案对和端口对。
若要基于代码的源方案创建 CodeConnectAccess 对象,请使用 CreateOriginSchemeAccess 方法。
若要创建 CodeConnectAccess 可以使用任何方案但受端口限制的对象,请使用 CreateAnySchemeAccess 方法。
构造函数
| CodeConnectAccess(String, Int32) | 
		 初始化 CodeConnectAccess 类的新实例。  | 
        	
字段
| AnyScheme | 
		 包含表示方案通配符的字符串值。  | 
        	
| DefaultPort | 
		 包含用于表示默认端口的值。  | 
        	
| OriginPort | 
		 包含用于表示代码原始 URI 中的端口值的值。  | 
        	
| OriginScheme | 
		 包含用于表示代码原始 URL 中的方案的值。  | 
        	
属性
| Port | 
		 获取当前实例表示的端口。  | 
        	
| Scheme | 
		 获取当前实例表示的 URI 方案。  | 
        	
方法
| CreateAnySchemeAccess(Int32) | 
		 返回一个 CodeConnectAccess 实例,该实例表示使用任何方案对指定端口的访问权限。  | 
        	
| CreateOriginSchemeAccess(Int32) | 
		 返回一个 CodeConnectAccess 实例,该实例表示使用代码的原始方案对指定端口的访问权限。  | 
        	
| Equals(Object) | 
		 返回一个值,指示两个 CodeConnectAccess 对象是否表示相同的方案和端口。  | 
        	
| GetHashCode() | 
		 用作特定类型的哈希函数。  | 
        	
| GetType() | 
		 获取当前实例的 Type。 (继承自 Object) | 
        	
| MemberwiseClone() | 
		 创建当前 Object 的浅表副本。 (继承自 Object) | 
        	
| ToString() | 
		 返回表示当前对象的字符串。 (继承自 Object) |