구성 파일을 읽고 연결 문자열을 가져 오는 C# 응용 프로그램을 만들었으며 각 연결 문자열에 대해 추가 처리를 위해 저장된 proc 목록을 읽습니다. 이제 일부 사용 권한 문제가 있습니다. 응용 프로그램을 개발할 때 dbo 수준의 사용자와 연결 문자열을 사용하고있었습니다. 실생활 연결 문자열은 DataReader를하고 datawriter 권한이있는 SQL 사용자를 위해, 그러나 나는 그런 사용자를 사용 발동의 목록을 얻을 수데이터베이스 액세스 권한 문제 (SQL Server 2008)
select user_name(uid) as owner, name from dbo.sysobjects where type='P' order by name asc
을 실행할 때 경우에 발동을 반환하지만, 쿼리 (레코드가 반환 I dbo로 실행)
보안상의 이유로 사용자에게 추가 권한을 부여하고 싶지 않습니다. 제 질문은 데이터 소유자/데이터 기록자 권한 만 가진 사용자가 저장된 procs 목록을 얻는 방법입니다. 가능하지 않은 경우 사용자가 해당 정보에 액세스해야하는 최소 권한은 무엇입니까?
나는 가능한 프록을 반환하는 사용자 매개 변수 및 쿼리을 sysobjects에 걸릴 내 응용 프로그램에 의해 소유 자격 증명에 부착 된 저장 프로 시저를 만들 것입니다 SQL 서버 2008
을 나열하려는 각 저장된 프로 시저에 대한 사용 권한을 부여 할 필요가있다 : SQL 서버 2005 및 최대, 나는'sysobjects '가 아닌'sys.procedures'를 사용할 것입니다. 여기서 sysobjects에 대한 MSDN 문서를 참조하십시오. http://msdn.microsoft.com/en-us/library/ms177596.aspx –