1

Windows Server 2012R2에서 IIS (v8.5.9600)에서 실행되는 클래식 ASP 응용 프로그램이 있습니다. 페이지 중 하나는 사용자가 시스템에서 처리 할 데이터 파일을 업로드 할 수있게 해주는 파일 업로드 컨트롤을 사용합니다. 파일이 업로드되면 업로드 된 파일의 이름을 가져 와서 테이블에 삽입하는 저장 프로 시저가 실행됩니다.클래식 ASP - 저장 프로 시저에 대한 실행 권한이 필요한 사용자

일부 사용자는 파일을 업로드 한 후 오류 메시지를 수신하고 있습니다. 는 IIS를 선택하면 나는이 특정 저장 프로 시저 실행 권한을 부여해야합니다 것처럼 보인다 다른 articles을 읽는에서 ...

244|80040e09|[Microsoft][ODBC_SQL_Server_Driver][SQL_Server]The_EXECUTE_permission_was_denied_on_the_object_'myStoredProcedureName'__database_'myDatabaseName'__schema_'dbo'., 

나는 오류가 다음과 같다 참조 로그인합니다. 내 질문은 ..

  1. 실행 권한이 필요한 사용자는 누구입니까? 데이터베이스 연결이 지정하는 사용자입니까, 아니면 IIS를 통해 웹 사이트가 실행되는 사용자입니까?
  2. 대부분의 사용자에게는이 오류가 발생하지 않습니다. 파일을 업로드하는 사용자 중 일부만 발생하는 것 같습니다. 문제가 모든 사용자에게 발생하지 않아야하는 권한 인 경우?
+0

실행 권한은 config 내에 사용자에게 필요합니다. 로드 밸런스 서버 중 하나가 다른 사용자 이름을 가지고있을 수 있습니다. 클라이언트가 특정 서버에 접속하면이 오류가 발생할 수 있습니다. –

+0

직접 오류를 재현하려고 노력하지만 계속 할 수 없습니다. 네트워크 내부와 네트워크 외부에서 테스트를 마쳤습니다. 다른 브라우저/OS 조합을 시도했지만 오류를 재현 할 수 없습니다. – webworm

+0

webworm : 연결 문자열에서 사용자에게 실행 권한을 부여해야합니다. @BhasyakaruluKottakota 이것은 [tag : asp.net]이 아닌 [tag : asp-classic]입니다. – Paul

답변

2

webworm - 많은 감사합니다.

연결 문자열에서 사용자에게 실행 권한을 부여해야합니다.

데이터베이스를 조작하는 사용자는 연결 문자열에 언급 된 사용자입니다. 물론 응용 프로그램의 각기 다른 부분에 여러 개의 연결 문자열을 사용하여 여러 데이터베이스에 연결할 수 있습니다.하지만 관리가 어려운 악몽이 될 수 있습니다. global.asa에 모든 연결 문자열을 만들고 SQL 사용자 계정을 가능한 한 제한하는 것이 좋습니다. 동일한 서버에 동일한 서버에있는 여러 데이터베이스에 대한 액세스 권한을 부여하는 것이 더 쉽습니다 ...