주석이 추가된 스키마 보안 고려 사항(SQLXML 4.0)
적용 대상: SQL Server Azure SQL Database
다음은 주석이 추가된 스키마를 사용하기 위한 보안 지침입니다.
매핑 스키마에서 기본 매핑을 사용하지 않습니다. 기본 매핑은 기본적으로 요소 이름을 테이블 이름에 매핑하고 특성 이름을 열 이름에 매핑하므로 결과 XML 문서에서 데이터베이스 정보(테이블 및 열 이름)가 공개됩니다. 따라서 XML 문서를 보는 사용자는 데이터베이스의 테이블 및 열 정보에 액세스할 수 있으므로 보안 위험이 발생할 수 있습니다. 이러한 위험을 방지하려면 스키마에 임의의 요소 및 특성 이름을 지정하고 주석을 사용하여 테이블 및 열에 명시적으로 매핑합니다. XSD 스키마 를 만들 때 기본 매핑을 사용하는 방법에 대한 자세한 내용은 테이블 및 열에 대한 XSD 요소 및 특성의 기본 매핑(SQLXML 4.0)을 참조하세요.
주석을 사용하여 명시적 매핑을 지정하면 테이블 이름 및 열 이름과 같은 데이터베이스 정보가 공개됩니다. 따라서 이러한 스키마를 공개적으로 사용할 수 있도록 하지 않을 수 있습니다.
재귀(최대 깊이 주석을 더 높은 값으로 설정하여 지정됨)를 사용하여 매핑 스키마에 대해 지정된 쿼리와 같은 특정 쿼리를 실행하는 데 시간이 더 오래 걸릴 수 있습니다. 필요에 따라 Command Time Out 속성을 설정하여 시간 제한(초)을 지정할 수 있습니다. 다음은 그 예입니다.
cn.Open "Provider=SQLOLEDB;Server=localhost;Database=tempdb;Integrated Security=SSPI;Command Properties='Command Time Out=50';"