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) |
2 つの CodeConnectAccess オブジェクトが同じスキームおよびポートを表すかどうかを示す値を返します。 |
GetHashCode() |
特定の型についてハッシュ関数として機能します。 |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
.NET