XmlReaderSettings.XmlResolver プロパティ

定義

外部ドキュメントへのアクセスに使用する XmlResolver を設定します。Sets the XmlResolver used to access external documents.

public:
 property System::Xml::XmlResolver ^ XmlResolver {  void set(System::Xml::XmlResolver ^ value); };
public System.Xml.XmlResolver? XmlResolver { set; }
public System.Xml.XmlResolver XmlResolver { set; }
member this.XmlResolver : System.Xml.XmlResolver
Public Property XmlResolver As XmlResolver

プロパティ値

XmlResolver

外部ドキュメントへのアクセスに使用する XmlResolverAn XmlResolver used to access external documents. null に設定されている場合、XmlException が外部リソースにアクセスしようとすると、XmlReader がスローされます。If set to null, an XmlException is thrown when the XmlReader tries to access an external resource. 既定値は、資格情報のない新しい XmlUrlResolver です。The default is a new XmlUrlResolver with no credentials. .NET Framework 4.5.2 以降では、この設定の既定値は null です。Starting with the .NET Framework 4.5.2, this setting has a default value of null.

次の例では、 XmlReader 既定の XmlSecureResolver 資格情報を持つを使用するを作成します。The following example creates an XmlReader that uses an XmlSecureResolver with default credentials.

// Create an XmlSecureResolver with default credentials.
XmlSecureResolver myResolver = new XmlSecureResolver(new XmlUrlResolver(), "http://serverName/data/");
myResolver.Credentials = CredentialCache.DefaultCredentials;

XmlReaderSettings settings = new XmlReaderSettings();
settings.XmlResolver = myResolver;

// Create the reader.
XmlReader reader = XmlReader.Create("http://serverName/data/books.xml", settings);

' Create an XmlSecureResolver with default credentials.
Dim myResolver As New XmlSecureResolver(New XmlUrlResolver(), "http://serverName/data/")
myResolver.Credentials = CredentialCache.DefaultCredentials

Dim settings As New XmlReaderSettings()
settings.XmlResolver = myResolver

' Create the reader.
Dim reader As XmlReader = XmlReader.Create("http://serverName/data/books.xml", settings)

注釈

は、 XmlResolver xml インスタンスドキュメントを検索して開くため、または xml インスタンスドキュメントによって参照される外部リソースを検索して開くために使用されます。The XmlResolver is used to locate and open an XML instance document, or to locate and open any external resources referenced by the XML instance document. これには、エンティティ、DTD、またはスキーマを含めることができます。This can include entities, DTD, or schemas. プロパティは、 XmlResolver.Credentials ネットワーク認証に必要な資格情報を指定するために使用できます。The XmlResolver.Credentials property can be used to specify any credentials required for network authentication.

重要

には、ユーザーの資格情報などの XmlResolver 機密情報が含まれている場合があるため、オブジェクトをキャッシュするとき XmlReaderSettings 、または XmlReaderSettings コンポーネントをあるコンポーネントから別のコンポーネントに渡すときは注意が必要です。Because the XmlResolver can contain sensitive information such as user credentials, you should be careful when caching XmlReaderSettings objects, or when passing the XmlReaderSettings object from one component to another.

XmlSecureResolver外部ドキュメントへのアクセスには、を使用できます。An XmlSecureResolver can be used to access external documents. クラスは、 XmlSecureResolver XmlResolver オブジェクトをラップし、基になっているがアクセスできるリソースを制限することによって、の別の実装をセキュリティで保護するのに役立ち XmlResolver XmlResolver ます。The XmlSecureResolver class helps to secure another implementation of XmlResolver by wrapping the XmlResolver object and restricting the resources that the underlying XmlResolver has access to.

ProcessInlineSchema オブジェクトの ProcessSchemaLocation および XmlReaderSettings の検証フラグは、既定では設定されていません。The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlReaderSettings object are not set by default. これらのフラグが設定されていると、XmlResolver オブジェクトの XmlReaderSettingsXmlReader のインスタンス ドキュメント中に出現したスキーマの場所を解決するために使用されます。When these flags are set, the XmlResolver of the XmlReaderSettings object is used to resolve schema locations encountered in the instance document in the XmlReader. XmlResolverオブジェクトがの場合 nullProcessInlineSchema および ProcessSchemaLocation 検証フラグが設定されている場合でも、スキーマの場所は解決されません。If the XmlResolver object is null, schema locations are not resolved even if the ProcessInlineSchema and ProcessSchemaLocation validation flags are set.

検証を実行しているときにスキーマを追加すると新しい型が追加されるため、検証しているドキュメントの検証結果を変えることができます。Schemas added during validation add new types and can change the validation outcome of the document being validated. 結果として、信頼できるソースからの外部スキーマだけが解決されるようにする必要があります。As a result, external schemas should only be resolved from trusted sources.

適用対象

こちらもご覧ください