2009-09-21 3 views
4

LinqToSQL과 신뢰할 수있는 연결을 사용하여 데이터베이스 선택/업데이트/삽입/삭제를 처리하고 있습니다. 과거에는 항상 저장 프로 시저를 사용하고 데이터베이스의 특정 sproc에 대한 응용 프로그램 풀 ID에 대한 실행 권한 만 부여했습니다. 이것은 내 첫 번째 LinqToSql 프로젝트입니다 (그리고 나는 그것이 얼마나 도움이되는지 정말 좋아합니다). LinqToSql을 작동시키기 위해 응용 프로그램 풀 ID에 대한 dbo 액세스를 허용하지 않기를 원합니다 (그러나 권장되는 경우에는 상관 없습니다). LinqToSql에 최소 사용 권한이 부여되도록 응용 프로그램 풀 ID에 부여 할 수있는 사용 권한 유형은 무엇입니까? 아니면 그냥 dbo 사용 권한과 함께 가서 그것을 완료해야합니까?
EXEC sp_addrolemember 'db_datareader', 'app_pool_identity'
EXEC sp_addrolemember 'db_datawriter', 'app_pool_identity'LinqToSql에 대해 SQL Server 사용자에게 부여 할 권한은 무엇입니까?

정확히

되지 않음으로 만 필요한 sprocs가 실행 권한을하지만, 내가 부여하는 동일한 수준의 보안 : KristoferA's answer이 당으로

내가 데이터베이스의 응용 프로그램 풀 ID를 부여 된 권한이다 Linq2SQL을 사용하여 엄청난 개발 이익을 얻었습니다. 그리고 전체 dbo 액세스 권한을 부여하는 것보다 낫습니다.

답변

1

그냥 읽고 스키마 변경 및 물건 장난없이 데이터를 기록 할 경우에 db_datareader 및 db_datawriter에 충분 ...

0

LinqToSQL 동적 SQL 생성 만듭니다. 따라서 데이터 조작 언어 명령 (삽입, 갱신, 삭제)에 대한 완전한 액세스가 필요합니다. 응용 프로그램 계정에 데이터 정의 언어 명령 (작성, 삭제, 변경 등)에 대한 액세스가 필요하지 않아야합니다.

관련 문제