WebPermission クラスとは? わかりやすく解説

WebPermission クラス

HTTP インターネット リソースへのアクセス権制御します

名前空間: System.Net
アセンブリ: System (system.dll 内)
構文構文

<SerializableAttribute> _
Public NotInheritable Class
 WebPermission
    Inherits CodeAccessPermission
    Implements IUnrestrictedPermission
Dim instance As WebPermission
[SerializableAttribute] 
public sealed class WebPermission : CodeAccessPermission,
 IUnrestrictedPermission
[SerializableAttribute] 
public ref class WebPermission sealed : public
 CodeAccessPermission, IUnrestrictedPermission
/** @attribute SerializableAttribute() */ 
public final class WebPermission extends CodeAccessPermission
 implements IUnrestrictedPermission
SerializableAttribute 
public final class WebPermission extends
 CodeAccessPermission implements IUnrestrictedPermission
解説解説

WebPermission は、インターネット リソースへのアクセス制御するためのメソッドプロパティセット提供しますWebPermission使用すると、WebPermission作成するときに設定される PermissionState に基づいてリソースへの制限付きまたは無制限アクセスを提供できます

WebPermission インスタンス作成するには、次のいずれかパラメータ セット使用してコンストラクタ呼び出します。

ConnectList および AcceptList は、アクセス許可与えた対象URI保持します。これらのリストいずれかに URI追加するには、AddPermission使用しますAcceptNetworkAccess パラメータとして渡す場合URIAcceptList追加されます。WebPermission は、AcceptList一致している URI指定するクラスへの接続許可します

注意に関するメモメモ

リソース標準パスのみを使用してアクセスDeny (拒否) する必要がありますすべてのパス構文使用する要はありません。

使用例使用例

Regex使用して WebPermission新しインスタンス作成する方法の例を次に示します追加ホスト接続追加されWebPermissionリスト受け入れます最後に接続受け入れリストコンソール表示されます。

' Create a Regex that accepts all the URLs contianing the host fragment
 www.contoso.com.
Dim myRegex As New Regex("http://www\.contoso\.com/.*")
  
' Create a WebPermission that gives permission to all the hosts containing
 same host fragment.
Dim myWebPermission As New
 WebPermission(NetworkAccess.Connect, myRegex)
' Add connect privileges for a www.adventure-works.com.
myWebPermission.AddPermission(NetworkAccess.Connect, "http://www.adventure-works.com")
' Add accept privileges for www.alpineskihouse.com.
myWebPermission.AddPermission(NetworkAccess.Accept, "http://www.alpineskihouse.com/")
' Check whether all callers higher in the call stack have been granted
 the permission.
myWebPermission.Demand()
  
' Get all the URIs with Connect permission.
Dim myConnectEnum As IEnumerator = myWebPermission.ConnectList
Console.WriteLine(ControlChars.NewLine + "The 'URIs' with 'Connect'
 permission are :" + ControlChars.NewLine)
While myConnectEnum.MoveNext()
  Console.WriteLine((ControlChars.Tab + myConnectEnum.Current.ToString()))
End While 

' Get all the URIs with Accept permission.      
Dim myAcceptEnum As IEnumerator = myWebPermission.AcceptList
Console.WriteLine(ControlChars.NewLine + ControlChars.NewLine + "The 'URIs'
 with 'Accept' permission is :" + ControlChars.NewLine)
  
While myAcceptEnum.MoveNext()
  Console.WriteLine((ControlChars.Tab + myAcceptEnum.Current))
End While
//  Create a Regex that accepts all URLs containing the host fragment
 www.contoso.com.
Regex myRegex = new Regex(@"http://www\.contoso\.com/.*");

// Create a WebPermission that gives permissions to all the hosts containing
 the same host fragment.
WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect
,myRegex);

//Add connect privileges for a www.adventure-works.com.
myWebPermission.AddPermission(NetworkAccess.Connect,"http://www.adventure-works.com");

//Add accept privileges for www.alpineskihouse.com.
myWebPermission.AddPermission(NetworkAccess.Accept, "http://www.alpineskihouse.com/");

// Check whether all callers higher in the call stack have been granted
 the permission.
myWebPermission.Demand();

// Get all the URIs with Connect permission.
IEnumerator myConnectEnum = myWebPermission.ConnectList;
Console.WriteLine("\nThe 'URIs' with 'Connect' permission are :\n");
while (myConnectEnum.MoveNext())
{Console.WriteLine("\t" + myConnectEnum.Current);}
 
// Get all the URIs with Accept permission.      
IEnumerator myAcceptEnum = myWebPermission.AcceptList;
Console.WriteLine("\n\nThe 'URIs' with 'Accept' permission is :\n");
  
while (myAcceptEnum.MoveNext())
  {Console.WriteLine("\t" + myAcceptEnum.Current);}

//  Create a Regex that accepts all URLs containing the host fragment
 www.contoso.com.
Regex^ myRegex = gcnew Regex( "http://www\\.contoso\\.com/.*"
 );

// Create a WebPermission that gives permissions to all the hosts containing
 the same host fragment.
WebPermission^ myWebPermission = gcnew WebPermission( NetworkAccess::Connect,myRegex
 );

//Add connect privileges for a www.adventure-works.com.
myWebPermission->AddPermission( NetworkAccess::Connect, "http://www.adventure-works.com"
 );

//Add accept privileges for www.alpineskihouse.com.
myWebPermission->AddPermission( NetworkAccess::Accept, "http://www.alpineskihouse.com/"
 );

// Check whether all callers higher in the call stack have been granted
 the permission.
myWebPermission->Demand();

// Get all the URIs with Connect permission.
IEnumerator^ myConnectEnum = myWebPermission->ConnectList;
Console::WriteLine( "\nThe 'URIs' with 'Connect' permission are :\n" );
while ( myConnectEnum->MoveNext() )
{
   Console::WriteLine( "\t{0}", myConnectEnum->Current );
}

// Get all the URIs with Accept permission.   
IEnumerator^ myAcceptEnum = myWebPermission->AcceptList;
Console::WriteLine( "\n\nThe 'URIs' with 'Accept' permission is :\n" );

while ( myAcceptEnum->MoveNext() )
{
   Console::WriteLine( "\t{0}", myAcceptEnum->Current );
}
// Create a Regex that accepts all URLs containing the host fragment
// www.contoso.com.
Regex myRegex = new Regex("http://www\\.contoso\\.com/.*");
// Create a WebPermission that gives permissions to all the hosts 
// containing the same host fragment.
WebPermission myWebPermission = new WebPermission(
    NetworkAccess.Connect, myRegex);
//Add connect privileges for a www.adventure-works.com.
myWebPermission.AddPermission(NetworkAccess.Connect,
    "http://www.adventure-works.com");
//Add accept privileges for www.alpineskihouse.com.
myWebPermission.AddPermission(NetworkAccess.Accept,
    "http://www.alpineskihouse.com/");
// Check whether all callers higher in the call stack have been
// granted the permission.
myWebPermission.Demand();
// Get all the URIs with Connect permission.
IEnumerator myConnectEnum = myWebPermission.get_ConnectList();
Console.WriteLine("\nThe 'URIs' with 'Connect' permission are :\n");
while (myConnectEnum.MoveNext()) {
    Console.WriteLine("\t" + myConnectEnum.get_Current());
}
// Get all the URIs with Accept permission.      
IEnumerator myAcceptEnum = myWebPermission.get_AcceptList();
Console.WriteLine("\n\nThe 'URIs' with 'Accept' permission is :\n");

while (myAcceptEnum.MoveNext()) {
    Console.WriteLine("\t" + myAcceptEnum.get_Current());
継承階層継承階層
System.Object
   System.Security.CodeAccessPermission
    System.Net.WebPermission
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
WebPermission メンバ
System.Net 名前空間
CodeAccessPermission
PermissionState
NetworkAccess 列挙


このページでは「.NET Framework クラス ライブラリ リファレンス」からWebPermission クラスを検索した結果を表示しています。
Weblioに収録されているすべての辞書からWebPermission クラスを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からWebPermission クラス を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「WebPermission クラス」の関連用語











WebPermission クラスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



WebPermission クラスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS