XmlReaderSettings XmlReaderSettings XmlReaderSettings XmlReaderSettings Class

定義

XmlReader メソッドで作成された Create オブジェクトでサポートする一連の機能を指定します。Specifies a set of features to support on the XmlReader object created by the Create method.

public ref class XmlReaderSettings sealed
public sealed class XmlReaderSettings
type XmlReaderSettings = class
Public NotInheritable Class XmlReaderSettings
継承
XmlReaderSettingsXmlReaderSettingsXmlReaderSettingsXmlReaderSettings

次の例ではXmlReader 、必要なXmlUrlResolver資格情報を持つを使用するを作成します。The following example creates an XmlReader that uses an XmlUrlResolver with the necessary credentials.

// Create an XmlUrlResolver with the credentials necessary to access the Web server.
XmlUrlResolver resolver = new XmlUrlResolver();
System.Net.NetworkCredential myCred;
myCred  = new System.Net.NetworkCredential(UserName,SecurelyStoredPassword,Domain);  
resolver.Credentials = myCred;

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

// Create the reader.
XmlReader reader = XmlReader.Create("http://serverName/data/books.xml", settings);
' Create an XmlUrlResolver with the credentials necessary to access the Web server.
Dim resolver As New XmlUrlResolver()
Dim myCred As System.Net.NetworkCredential
myCred = New System.Net.NetworkCredential(UserName, SecurelyStoredPassword, Domain)
resolver.Credentials = myCred

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

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

注釈

インスタンスを取得Create XmlReaderするには、メソッドを使用します。You use the Create method to obtain XmlReader instances. このメソッドは、 XmlReaderSettingsクラスを使用して、作成するXmlReaderオブジェクトに実装する機能を指定します。This method uses the XmlReaderSettings class to specify which features to implement in the XmlReader object it creates.

適合性チェック、検証、およびXmlReaderそのCreate他の一般的なシナリオに使用する設定については、「」およびリファレンスページの「解説」セクションを参照してください。See the Remarks sections of the XmlReader and Create reference pages for information about which settings to use for conformance checks, validation, and other common scenarios. 既定のXmlReaderSettings()設定の一覧については、コンストラクターを参照してください。See the XmlReaderSettings() constructor for a list of default settings.

セキュリティの考慮事項Security considerations

XmlReaderSettingsクラスを使用する場合は、次の点を考慮してください。Consider the following when using the XmlReaderSettings class.

  • 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. オブジェクトがnullの場合、およびProcessInlineSchema ProcessSchemaLocation検証フラグが設定されている場合でも、スキーマの場所は解決されません。 XmlResolverIf 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.

  • 検証エラーメッセージによって、機密性の高いコンテンツモデル情報が公開される場合があります。Validation error messages may expose sensitive content model information. 検証エラーと警告メッセージはValidationEventHandler 、デリゲートを使用して処理されるか、 XmlSchemaValidationException XmlReaderSettings XmlSchemaValidationExceptionオブジェクトにイベントハンドラーが提供されない場合はとして公開されます (検証の警告によってがスローされることはありません)。Validation error and warning messages are handled using the ValidationEventHandler delegate, or are exposed as an XmlSchemaValidationException if no event handler is provided to the XmlReaderSettings object (validation warnings do not cause an XmlSchemaValidationException to be thrown). このコンテンツモデル情報は、信頼されていないシナリオでは公開しないでください。This content model information should not be exposed in untrusted scenarios. 検証警告メッセージは既定では抑制され、 ReportValidationWarningsフラグを設定することによって報告できます。Validation warning messages are suppressed by default and can be reported by setting the ReportValidationWarnings flag.

  • のプロパティはSourceUri 、例外の原因となったスキーマファイルへの URI パスを返します。XmlSchemaValidationExceptionThe SourceUri property of an XmlSchemaValidationException returns the URI path to the schema file that caused the exception. 信頼SourceUriされていないシナリオでは、プロパティを公開しないでください。The SourceUri property should not be exposed in untrusted scenarios.

  • ドキュメントの大部分に対する id 制約を持つスキーマに対して、高可用性シナリオで、信頼されていない大きな XML ドキュメントを検証する場合は、フラグ(既定で有効)を無効にすることをお勧めします。ProcessIdentityConstraintsDisabling the ProcessIdentityConstraints flag (enabled by default) is recommended when validating, untrusted, large XML documents in high availability scenarios against a schema with identity constraints over a large part of the document.

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

  • 既定で DTD の処理は無効になっています。DTD processing is disabled by default. DTD 処理を有効にする場合は、信頼されていないソースの Dtd とサービス拒否攻撃の可能性について注意する必要があります。If you enable DTD processing, you need to be aware of including DTDs from untrusted sources and possible denial of service attacks. を使用して、がアクセスXmlReaderできるリソースを制限します。 XmlSecureResolverUse the XmlSecureResolver to restrict the resources that the XmlReader can access.

  • 信頼できないソースからの NameTableXmlNamespaceManager、および XmlResolver オブジェクトなどのサポート コンポーネントは受け入れないようにします。Do not accept supporting components, such as NameTable, XmlNamespaceManager, and XmlResolver objects, from an untrusted source.

  • XmlReader を使用するアプリケーションのメモリ使用量が、解析済み XML ドキュメントのサイズに相関する場合があります。Memory usage of an application that uses XmlReader may have a correlation to the size of the parsed XML document. 非常に大きな XML ドキュメントを送信して解析させることは、サービス拒否攻撃 (DoS) の一種です。One form of denial of service attack is when excessively large XML documents are submitted to be parsed. MaxCharactersInDocumentプロパティを設定して解析できるドキュメントのサイズを制限できます。その後、 MaxCharactersFromEntitiesプロパティを設定して、エンティティを展開したときに生成される文字数を制限できます。You can limit the size of the document that can be parsed by setting the MaxCharactersInDocument property and then limit the number of characters that result from expanding entities by setting the MaxCharactersFromEntities property.

コンストラクター

XmlReaderSettings() XmlReaderSettings() XmlReaderSettings() XmlReaderSettings()

XmlReaderSettings クラスの新しいインスタンスを初期化します。Initializes a new instance of the XmlReaderSettings class.

XmlReaderSettings(XmlResolver) XmlReaderSettings(XmlResolver) XmlReaderSettings(XmlResolver) XmlReaderSettings(XmlResolver)

XmlReaderSettings クラスの新しいインスタンスを初期化します。Initializes a new instance of the XmlReaderSettings class.

プロパティ

Async Async Async Async

非同期 XmlReader メソッドを XmlReader の特定のインスタンスで使用できるかどうかを取得または設定します。Gets or sets whether asynchronous XmlReader methods can be used on a particular XmlReader instance.

CheckCharacters CheckCharacters CheckCharacters CheckCharacters

文字のチェックを行うかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to do character checking.

CloseInput CloseInput CloseInput CloseInput

リーダーを閉じるときに基になるストリームまたは TextReader を閉じる必要があるかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the underlying stream or TextReader should be closed when the reader is closed.

ConformanceLevel ConformanceLevel ConformanceLevel ConformanceLevel

XmlReader が従う準拠のレベルを取得または設定します。Gets or sets the level of conformance which the XmlReader will comply.

DtdProcessing DtdProcessing DtdProcessing DtdProcessing

DTD の処理を決定する値を取得または設定します。Gets or sets a value that determines the processing of DTDs.

IgnoreComments IgnoreComments IgnoreComments IgnoreComments

コメントを無視するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to ignore comments.

IgnoreProcessingInstructions IgnoreProcessingInstructions IgnoreProcessingInstructions IgnoreProcessingInstructions

処理命令を無視するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to ignore processing instructions.

IgnoreWhitespace IgnoreWhitespace IgnoreWhitespace IgnoreWhitespace

意味のない空白を無視するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to ignore insignificant white space.

LineNumberOffset LineNumberOffset LineNumberOffset LineNumberOffset

XmlReader オブジェクトの行番号オフセットを取得または設定します。Gets or sets line number offset of the XmlReader object.

LinePositionOffset LinePositionOffset LinePositionOffset LinePositionOffset

XmlReader オブジェクトの行番号オフセットを取得または設定します。Gets or sets line position offset of the XmlReader object.

MaxCharactersFromEntities MaxCharactersFromEntities MaxCharactersFromEntities MaxCharactersFromEntities

エンティティの展開時に許容されるドキュメント内の最大文字数を示す値を取得または設定します。Gets or sets a value indicating the maximum allowable number of characters in a document that result from expanding entities.

MaxCharactersInDocument MaxCharactersInDocument MaxCharactersInDocument MaxCharactersInDocument

XML ドキュメントの最大文字数を示す値を取得または設定します。Gets or sets a value indicating the maximum allowable number of characters in an XML document. ゼロ (0) の値は、XML ドキュメントのサイズに制限がないことを示します。A zero (0) value means no limits on the size of the XML document. 0 以外の値は、最大サイズを文字数で示します。A non-zero value specifies the maximum size, in characters.

NameTable NameTable NameTable NameTable

最小単位に分割された文字列の比較に使用する XmlNameTable を取得または設定します。Gets or sets the XmlNameTable used for atomized string comparisons.

ProhibitDtd ProhibitDtd ProhibitDtd ProhibitDtd

文書型定義 (DTD) 処理を禁止するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether to prohibit document type definition (DTD) processing. このプロパティは今後使用しません。This property is obsolete. 代わりに、DtdProcessing を使用してください。Use DtdProcessing instead.

Schemas Schemas Schemas Schemas

スキーマの検証を行うときに使用する XmlSchemaSet を取得または設定します。Gets or sets the XmlSchemaSet to use when performing schema validation.

ValidationFlags ValidationFlags ValidationFlags ValidationFlags

スキーマ検証の設定を示す値を取得または設定します。Gets or sets a value indicating the schema validation settings. この設定は、スキーマを検証する XmlReader オブジェクトに適用されます (ValidationType.Schema に設定されている ValidationType プロパティ)。This setting applies to XmlReader objects that validate schemas (ValidationType property set to ValidationType.Schema).

ValidationType ValidationType ValidationType ValidationType

XmlReader で読み込むときに検証または型の割り当てを実行するかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the XmlReader will perform validation or type assignment when reading.

XmlResolver XmlResolver XmlResolver XmlResolver

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

メソッド

Clone() Clone() Clone() Clone()

XmlReaderSettings インスタンスのコピーを作成します。Creates a copy of the XmlReaderSettings instance.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
Reset() Reset() Reset() Reset()

設定クラスのメンバーを既定値にリセットします。Resets the members of the settings class to their default values.

ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

イベント

ValidationEventHandler ValidationEventHandler ValidationEventHandler ValidationEventHandler

リーダーが検証エラーを検出すると発生します。Occurs when the reader encounters validation errors.

適用対象

こちらもご覧ください