XmlSecureResolverとは? わかりやすく解説

XmlSecureResolver クラス

XmlResolver オブジェクトラップし、基になっている XmlResolverアクセスできるリソース制限することによって、XmlResolver別の実装セキュリティ保護支援します

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

Public Class XmlSecureResolver
    Inherits XmlResolver
Dim instance As XmlSecureResolver
public class XmlSecureResolver : XmlResolver
public ref class XmlSecureResolver : public
 XmlResolver
public class XmlSecureResolver extends XmlResolver
public class XmlSecureResolver extends
 XmlResolver
解説解説

XmlSecureResolverXmlResolver具体的な実装ラップし、基になる XmlResolverアクセスできるリソース制限します。たとえば、XmlSecureResolver には、埋め込まれURI (Uniform Resource Identifier) 参照から発生するドメイン間のリダイレクト禁止する機能用意されています。

XmlSecureResolver オブジェクト構築するときに、有効な XmlResolver 実装URL、System.Security.Policy.Evidence のインスタンス、または、System.Security.PermissionSet を設定しますXmlSecureResolver は、これらを使用してセキュリティ判断しますSystem.Security.PermissionSet生成される既存の PermissionSet が使用され、その PermissionSet で PermissionSet.PermitOnly が呼び出され、基になる XmlResolverセキュリティ保護支援します

セキュリティに関するメモ重要 :

.NET Framework 共通言語ランタイム (CLR: Common Language Runtime) で実行するコードと、Microsoft SQL Server 2005 内に統合されCLR実行するコード用のセキュリティ インフラストラクチャには相違点ありますこのため.NET Framework CLR 用に開発されコードSQL Server統合されCLR使用すると、動作異な可能性あります。これらの相違点1 つは、URL に基づく証拠使用している場合XmlSecureResolver クラス影響与えます (これは、CreateEvidenceForUrl メソッドまたは XmlSecureResolver(XmlResolver,String) コンストラクタ使用している場合発生する可能性あります)。SQL Server統合されCLRポリシー解決機構は、Url 情報Zone 情報利用しません。代わりにSQL Server統合されCLR は、アセンブリ読み込んだときにサーバーによって追加される GUID基づいてアクセス許可与えますSQL Server統合されCLRXmlSecureResolver使用する場合は、指定されPermissionSet直接使用する必須の証拠提供してください

継承時の注意 このクラスには継承確認要求ありますXmlSecureResolver クラスから継承するには、完全信頼が必要です。詳細については、「継承確認要求」を参照してください

継承階層継承階層
System.Object
   System.Xml.XmlResolver
    System.Xml.XmlSecureResolver
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

XmlSecureResolver コンストラクタ (XmlResolver, String)

XmlResolverURL指定してXmlSecureResolver クラス新しインスタンス初期化します。

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

Public Sub New ( _
    resolver As XmlResolver, _
    securityUrl As String _
)
Dim resolver As XmlResolver
Dim securityUrl As String

Dim instance As New XmlSecureResolver(resolver,
 securityUrl)
public XmlSecureResolver (
    XmlResolver resolver,
    string securityUrl
)
public:
XmlSecureResolver (
    XmlResolver^ resolver, 
    String^ securityUrl
)
public XmlSecureResolver (
    XmlResolver resolver, 
    String securityUrl
)
public function XmlSecureResolver (
    resolver : XmlResolver, 
    securityUrl : String
)

パラメータ

resolver

XmlSecureResolver によってラップされる XmlResolver。

securityUrl

基になる XmlResolver適用される System.Security.PermissionSet の作成使用される URLXmlSecureResolver は、基になる XmlResolver で GetEntity を呼び出す前に作成済みPermissionSet で PermissionSet.PermitOnly を呼び出します。

解説解説
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

XmlSecureResolver コンストラクタ (XmlResolver, PermissionSet)

XmlResolverSystem.Security.PermissionSet指定してXmlSecureResolver クラス新しインスタンス初期化します。

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

Public Sub New ( _
    resolver As XmlResolver, _
    permissionSet As PermissionSet _
)
Dim resolver As XmlResolver
Dim permissionSet As PermissionSet

Dim instance As New XmlSecureResolver(resolver,
 permissionSet)
public XmlSecureResolver (
    XmlResolver resolver,
    PermissionSet permissionSet
)
public:
XmlSecureResolver (
    XmlResolver^ resolver, 
    PermissionSet^ permissionSet
)
public XmlSecureResolver (
    XmlResolver resolver, 
    PermissionSet permissionSet
)
public function XmlSecureResolver (
    resolver : XmlResolver, 
    permissionSet : PermissionSet
)

パラメータ

resolver

XmlSecureResolver によってラップされる XmlResolver。

permissionSet

基になる XmlResolver適用する System.Security.PermissionSet。XmlSecureResolver は、基になる XmlResolver で GetEntity を呼び出す前に作成済みPermissionSet で PermissionSet.PermitOnly を呼び出します。

使用例使用例

カスタマイズされたアクセス許可セット使用してXmlSecureResolver オブジェクト構築する例を次に示します

public shared function GetFile
 (fileURL as String , resolver as
 XmlResolver) as Object
 
  '  Generate the default PermissionSet using the file URL.
  Dim evidence as Evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL)
  Dim myPermissions as PermissionSet = SecurityManager.ResolvePolicy(evidence)

  '  Modify the PermissionSet to only allow access to http://www.contoso.com.
  '  Create a WebPermission that only allows access to http://www.contoso.com.
  Dim myWebPermission as WebPermission = new
 WebPermission(NetworkAccess.Connect, "http://www.contoso.com")
  '  Replace the existing WebPermission in myPermissions with the updated
 WebPermission.
  myPermissions.SetPermission(myWebPermission)

  '  Use the modified PermissionSet to construct the XmlSecureResolver.
  Dim sResolver as XmlSecureResolver = new
 XmlSecureResolver(resolver, myPermissions)

  '  Get the object.
  Dim fullUri as Uri = sResolver.ResolveUri(nothing,
 fileURL)
  return sResolver.GetEntity(fullUri, nothing,
 nothing)
end function 
public static Object GetFile (String fileURL,
 XmlResolver resolver) {
 
  // Generate the default PermissionSet using the file URL.
  Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL);
  PermissionSet myPermissions = SecurityManager.ResolvePolicy(evidence);

  // Modify the PermissionSet to only allow access to http://www.contoso.com.
  // Create a WebPermission which only allows access to http://www.contoso.com.
  WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect,
 "http://www.contoso.com");
  // Replace the existing WebPermission in myPermissions with the updated
 WebPermission.
  myPermissions.SetPermission(myWebPermission);

  // Use the modified PermissionSet to construct the XmlSecureResolver.
  XmlSecureResolver sResolver = new XmlSecureResolver(resolver,
 myPermissions);

  // Get the object.
  Uri fullUri = sResolver.ResolveUri(null, fileURL);
  return sResolver.GetEntity(fullUri, null,
 null);
} 
Object^ GetFile( String^ fileURL, XmlResolver^ resolver )
{
   // Generate the default PermissionSet using the file URL.
   Evidence^ evidence = XmlSecureResolver::CreateEvidenceForUrl( fileURL );
   PermissionSet^ myPermissions = SecurityManager::ResolvePolicy( evidence );
   
   // Modify the PermissionSet to only allow access to http://www.contoso.com.
   // Create a WebPermission which only allows access to http://www.contoso.com.
   WebPermission^ myWebPermission = gcnew WebPermission(
      NetworkAccess::Connect,"http://www.contoso.com" );
   // Replace the existing WebPermission in myPermissions with the updated
 WebPermission.
   myPermissions->SetPermission( myWebPermission );
   
   // Use the modified PermissionSet to construct the XmlSecureResolver.
   XmlSecureResolver^ sResolver = gcnew XmlSecureResolver( resolver,myPermissions
 );
   
   // Get the object.
   Uri^ fullUri = sResolver->ResolveUri( nullptr, fileURL );
   return sResolver->GetEntity( fullUri, nullptr, nullptr );
}
public static Object GetFile(String fileURL,
 XmlResolver resolver)
{
    // Generate the default PermissionSet using the file URL.
    System.Security.Policy.Evidence evidence = XmlSecureResolver.
        CreateEvidenceForUrl(fileURL);
    PermissionSet myPermissions = System.Security.SecurityManager.
        ResolvePolicy(evidence);
    // Modify the PermissionSet to only allow access to 
    // http://www.contoso.com.
    // Create a WebPermission which only allows access to 
    // http://www.contoso.com.
    WebPermission myWebPermission = new WebPermission(
        NetworkAccess.Connect, "http://www.contoso.com");
    // Replace the existing WebPermission in myPermissions with 
    // the updated WebPermission.
    myPermissions.SetPermission(myWebPermission);
    // Use the modified PermissionSet to construct the XmlSecureResolver.
    XmlSecureResolver sResolver = new XmlSecureResolver(resolver
,
        myPermissions);
    // Get the object.
    Uri fullUri = sResolver.ResolveUri(null, fileURL);
    return sResolver.GetEntity(fullUri, null,
 null);
} //GetFile
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
XmlSecureResolver クラス
XmlSecureResolver メンバ
System.Xml 名前空間
CreateEvidenceForUrl
System.Security.Policy.Evidence
System.Net.WebPermission
System.Security.SecurityManager
その他の技術情報
PermitOnly メソッド使用

XmlSecureResolver コンストラクタ

XmlSecureResolver クラス新しインスタンス初期化します。
オーバーロードの一覧オーバーロードの一覧

名前 説明
XmlSecureResolver (XmlResolver, Evidence) XmlResolver と System.Security.Policy.Evidence を指定してXmlSecureResolver クラス新しインスタンス初期化します。
XmlSecureResolver (XmlResolver, PermissionSet) XmlResolver と System.Security.PermissionSet を指定してXmlSecureResolver クラス新しインスタンス初期化します。
XmlSecureResolver (XmlResolver, String) XmlResolverURL指定してXmlSecureResolver クラス新しインスタンス初期化します。
参照参照

関連項目

XmlSecureResolver クラス
XmlSecureResolver メンバ
System.Xml 名前空間

その他の技術情報

PermitOnly メソッド使用

XmlSecureResolver コンストラクタ (XmlResolver, Evidence)

XmlResolverSystem.Security.Policy.Evidence指定してXmlSecureResolver クラス新しインスタンス初期化します。

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

Public Sub New ( _
    resolver As XmlResolver, _
    evidence As Evidence _
)
Dim resolver As XmlResolver
Dim evidence As Evidence

Dim instance As New XmlSecureResolver(resolver,
 evidence)
public XmlSecureResolver (
    XmlResolver resolver,
    Evidence evidence
)
public:
XmlSecureResolver (
    XmlResolver^ resolver, 
    Evidence^ evidence
)
public XmlSecureResolver (
    XmlResolver resolver, 
    Evidence evidence
)
public function XmlSecureResolver (
    resolver : XmlResolver, 
    evidence : Evidence
)

パラメータ

resolver

XmlSecureResolver によってラップされる XmlResolver。

evidence

基になる XmlResolver適用される System.Security.PermissionSet の作成使用される EvidenceXmlSecureResolver は、基になる XmlResolver で GetEntity を呼び出す前に作成済みPermissionSet で PermissionSet.PermitOnly を呼び出します。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

XmlSecureResolver プロパティ


XmlSecureResolver メソッド


パブリック メソッドパブリック メソッド

( プロテクト メソッド参照)
  名前 説明
パブリック メソッド CreateEvidenceForUrl 指定されURL使用して、System.Security.Policy.Evidence を作成します
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 ( Object から継承されます。)
パブリック メソッド GetEntity オーバーライドされます実際リソースを含むオブジェクトURI安全に割り当てます。このメソッドは、基になる XmlResolver で GetEntity呼び出す前に PermissionSet.PermitOnly を呼び出すことで、コンストラクタ作成された System.Security.PermissionSet を一時的に設定してリソース開きます
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 ( Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 ( Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 ( Object から継承されます。)
パブリック メソッド ResolveUri オーバーライドされます。 基になる XmlResolverResolveUri呼び出してベース URI相対 URI から絶対 URI解決します
パブリック メソッド ToString  現在の Object を表す String返します。 ( Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

XmlSecureResolver クラス
System.Xml 名前空間

その他の技術情報

PermitOnly メソッド使用
方法 : XmlSecureResolver クラス使用する

XmlSecureResolver メンバ

XmlResolver オブジェクトラップし、基になっている XmlResolverアクセスできるリソース制限することによって、XmlResolver別の実装セキュリティ保護支援します

XmlSecureResolver データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド XmlSecureResolver オーバーロードされます。 XmlSecureResolver クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
パブリック メソッドパブリック メソッド
( プロテクト メソッド参照)
  名前 説明
パブリック メソッド CreateEvidenceForUrl 指定されURL使用して、System.Security.Policy.Evidence を作成します
パブリック メソッド Equals  オーバーロードされます2 つObject インスタンス等しかどうか判断します。 (Object から継承されます。)
パブリック メソッド GetEntity オーバーライドされます実際リソースを含むオブジェクトURI安全に割り当てます。このメソッドは、基になる XmlResolverGetEntity呼び出す前に PermissionSet.PermitOnly を呼び出すことで、コンストラクタ作成された System.Security.PermissionSet を一時的に設定してリソース開きます
パブリック メソッド GetHashCode  特定の型のハッシュ関数として機能します。GetHashCode は、ハッシュ アルゴリズムや、ハッシュ テーブルのようなデータ構造での使用適してます。 (Object から継承されます。)
パブリック メソッド GetType  現在のインスタンスType取得します。 (Object から継承されます。)
パブリック メソッド ReferenceEquals  指定した複数Object インスタンス同一かどうか判断します。 (Object から継承されます。)
パブリック メソッド ResolveUri オーバーライドされます。 基になる XmlResolverResolveUri呼び出してベース URI相対 URI から絶対 URI解決します
パブリック メソッド ToString  現在の Object を表す String返します。 (Object から継承されます。)
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

XmlSecureResolver クラス
System.Xml 名前空間

その他の技術情報

PermitOnly メソッド使用
方法 : XmlSecureResolver クラス使用する



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

辞書ショートカット

すべての辞書の索引

「XmlSecureResolver」の関連用語











XmlSecureResolverのお隣キーワード
検索ランキング

   

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



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

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

©2025 GRAS Group, Inc.RSS