次の方法で共有


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
)

パラメータ

使用例

カスタマイズされたアクセス許可セットを使用して、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 https://www.contoso.com.
  '  Create a WebPermission that only allows access to https://www.contoso.com.
  Dim myWebPermission as WebPermission = new WebPermission(NetworkAccess.Connect, "https://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 https://www.contoso.com.
  // Create a WebPermission which only allows access to https://www.contoso.com.
  WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect, "https://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 https://www.contoso.com.
   // Create a WebPermission which only allows access to https://www.contoso.com.
   WebPermission^ myWebPermission = gcnew WebPermission(
      NetworkAccess::Connect,"https://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 
    // https://www.contoso.com.
    // Create a WebPermission which only allows access to 
    // https://www.contoso.com.
    WebPermission myWebPermission = new WebPermission(
        NetworkAccess.Connect, "https://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

プラットフォーム

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

バージョン情報

.NET Framework

サポート対象 : 2.0、1.1

参照

関連項目

XmlSecureResolver クラス
XmlSecureResolver メンバ
System.Xml 名前空間
CreateEvidenceForUrl
System.Security.Policy.Evidence
System.Net.WebPermission
System.Security.SecurityManager

その他の技術情報

PermitOnly メソッドの使用