내가 본 모든 샘플은 저장 프로 시저를 사용합니다. 인라인 SQL을 사용하는 Classic ASP로 작성된 이전 응용 프로그램을 채택했습니다. 이것은 명백한 문제이므로 더 안전한 코드로 변환해야합니다. 클라이언트는이 응용 프로그램에서 저장 프로 시저를 사용하기를 원치 않으므로 저장 프로 시저없이 매개 변수화 된 쿼리를 실행하는 방법이 있습니까?저장 프로 시저가없는 매개 변수화 된 쿼리?
감사합니다.
내가 본 모든 샘플은 저장 프로 시저를 사용합니다. 인라인 SQL을 사용하는 Classic ASP로 작성된 이전 응용 프로그램을 채택했습니다. 이것은 명백한 문제이므로 더 안전한 코드로 변환해야합니다. 클라이언트는이 응용 프로그램에서 저장 프로 시저를 사용하기를 원치 않으므로 저장 프로 시저없이 매개 변수화 된 쿼리를 실행하는 방법이 있습니까?저장 프로 시저가없는 매개 변수화 된 쿼리?
감사합니다.
클라이언트가 저장 프로 시저를 사용하지 않는 어떤 이유가 있습니까? 소스 코드뿐만 아니라 데이터베이스 수준에서도 저장 프로 시저를 사용하는 것이 훨씬 쉽습니다. 위에서 두 번째 방법을 사용하는 경우 인라인 쿼리에서 쿼리 계획 캐싱을 가져와야하지만, 클라이언트에서 사용하는 것이 좋다고 설득 할 수 있다면 간단한 sprocs로 더 잘 수행 할 수 있습니다. 다른 모든 것이 실패하면 위의 링크는 꽤 견고합니다. 특히 두 번째 링크는 매우 견고합니다.
- 1 : "쉽다"는 주관적이며 저장 프로 시저의 사용은 SQL 주입에 대한 보장이 아닙니다. – RedFilter
이것이 주관적인 일이라고 생각하지 않습니다. 이것은 다중 계층 개발의 표준 개념으로, 논리와 데이터 계층을 분리합니다. 나는 또한 저장 프로 시저가 SQL 주입에 대한 보호를 보장한다고 말한 적이 없다. 매개 변수화 된 쿼리 및 저장 프로 시저를 사용하면 SQL 삽입을 허용하는 지연 코딩에서 발생하는 많은 상황을 방지 할 수 있지만 sprocs의 동적 쿼리가 다른 것보다 취약 해지는 것을 막지는 못합니다. 아래 표는 이것이 적절하고 통찰력있는 응답 이었음을 고려할 때 매우 부적절한 것 같습니다. – tcnolan
첫 번째 링크가 작동하지 않는 것 같습니다. – Chris
제게 잘 작동했습니다. –
테스트되었습니다. www가 없으면로드되지 않는 것 같습니다. 감사! – Chris