저는 최근에 클라이언트 용 ASP.NET 프로젝트에서 작업하고 있습니다. 프로젝트는 이전 Oracle 데이터베이스에서 새 SQL Server 2008 데이터베이스로 데이터베이스를 마이그레이션하는 것이 었습니다. 마이그레이션은 순조롭게 진행되었으며 대부분의 절차는 오래 걸리지 않았습니다. 그러나 이제 우리는 SQL Server 인증을 사용하고 사용자 이름과 암호를 사용하여 .NET 코드에서 데이터베이스에 액세스하여 지금까지 문제가 발생했습니다..NET 인증 문제
<add key="DatabaseConnectionString" value="Data Source=DATASOURCE;Initial Catalog=DATABASE;User Id=USERID;Password=PASSWORD;"/>
이 내가 말하는 클라이언트에서 이메일 받았다있다 그러나 최근에 잘 작동했다 :
을 "대신 데이터베이스에 액세스하기 위해 .NET 응용 프로그램에 대한 로컬 SQL 계정을 사용하여 다음 연결 문자열을 보여줍니다 Active Directory 계정을 사용할 수 있습니까? web.config에서는 <username>
이 아닌 <domain name>/<username>
으로 표시됩니다. "
내가 뭘에 대한 혼란 스러워요 것은 :
내가 Windows 인증으로 SQL 서버 내에서 인증 모드를 변경해야합니까? 클라이언트가 <username>
에서 <domain>/<username>
으로 변경하려고합니까 아니면 반대 방향입니까? web.config의 abouts은 사용자 이름을 변경해야합니까? 연결 고리에 있습니까?
위의 사항에 대한 도움이 될 것입니다.
<identity impersonate="true"/>
<authentication mode="Windows"/>
로그온 프로세스가 응용 프로그램 내에서 작동하는 방식으로 생각하면 데이터베이스에서 권한을 부여받은 도메인 내에 있으면 사용자가 데이터베이스에 연결할 수 있습니다. 그런 다음 연결되면 사용자 이름 (도메인/사용자 이름)이 사용자 테이블에 있는지 확인합니다. 그들은 액세스 권한이 부여됩니다. –
이미 통합 보안 = SSPI를 추가 했으므로 데이터베이스에 연결할 수 있습니다. 그러나 내 데이터베이스 내에서 스키마 접두사가 있습니다.그래서 내 모든 저장 프로 시저가 스키마 내에 있습니다. .NET 코드가 프로 시저를 호출하려고하면 접두사 스키마가 추가되지 않고 저장 프로 시저를 찾을 수 없습니다. 나는 우리가 기본 스키마를 변경할 수없는 사용자 그룹 (사용자 그룹)을 사용하기 때문에 비 귀찮은 스키마를 변경하면이 문제가 해결된다는 것을 이해합니다. –
통합 보안으로 변경하기 전에 접두사를 프로 시저 호출에 추가 했습니까? –