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.

설명 섹션을 참조 합니다 XmlReaderCreate 규칙 검사, 유효성 검사 및 기타 일반적인 시나리오에 사용 하는 설정에 대 한 정보에 대 한 페이지를 참조 합니다.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 개체의 ProcessSchemaLocationXmlReaderSettings 유효성 검사 플래그는 기본적으로 설정되지 않습니다.The ProcessInlineSchema and ProcessSchemaLocation validation flags of an XmlReaderSettings object are not set by default. 이 플래그를 설정하면 XmlResolver 개체의 XmlReaderSettings를 사용하여 XmlReader에서 인스턴스 문서에 나타난 스키마 위치를 확인할 수 있습니다.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 개체가 null, 스키마 위치는 확인 되지 않습니다 경우에 합니다 ProcessInlineSchemaProcessSchemaLocation 유효성 검사 플래그를 설정 합니다.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.

  • 유효성 검사 오류 메시지는 중요 한 콘텐츠 모델 정보를 노출할 수 있습니다.Validation error messages may expose sensitive content model information. 유효성 검사 오류 및 경고 메시지를 사용 하 여 처리 됩니다는 ValidationEventHandler 대리자 또는으로 노출 됩니다는 XmlSchemaValidationException 이벤트 처리기가 제공 되는 경우를 XmlReaderSettings 개체 (유효성 검사 경고 발생 하지 않습니다는 XmlSchemaValidationException 를 throw).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 의 속성을 XmlSchemaValidationException 예외를 발생 시킨 스키마 파일의 URI 경로 반환 합니다.The 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.

  • 사용 하지 않도록 설정 된 ProcessIdentityConstraints 유효성 검사, 신뢰할 수 없는 큰 XML 문서의 많은 부분을 통해 id 제약 조건이 있는 스키마에 대해 가용성 우선 시나리오에서 설명 하는 경우 (기본적으로 사용) 플래그는 것이 좋습니다.Disabling 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. 사용 하 여는 XmlSecureResolver 리소스를 제한 하는 XmlReader 액세스할 수 있습니다.Use the XmlSecureResolver to restrict the resources that the XmlReader can access.

  • 신뢰할 수 없는 소스로부터 NameTable, XmlNamespaceManagerXmlResolver 개체 등의 지원 구성 요소를 받지 마십시오.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 문서를 제출하는 경우입니다.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. 이 설정은 스키마(ValidationType.Schema로 설정된 ValidationType 속성) 유효성 검사를 하는 XmlReader 개체에 적용됩니다.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.

적용 대상

추가 정보