ASP.Net 웹 사이트를 데이터베이스에 연결하는 기본 방법 (모범 사례)은 무엇입니까? 신뢰할 수있는 연결을 사용하고 NT 권한 계정에 액세스 권한을 부여하는 것만 큼 간단하지는 않습니다.ASP.Net의 기본 DB 연결
무엇을해야합니까? SQL Server (2008)를 새로 설치한다고 가정 할 때 웹 사이트의 데이터베이스에 대한 액세스를 구성하려면 어떻게해야합니까?
ASP.Net 웹 사이트를 데이터베이스에 연결하는 기본 방법 (모범 사례)은 무엇입니까? 신뢰할 수있는 연결을 사용하고 NT 권한 계정에 액세스 권한을 부여하는 것만 큼 간단하지는 않습니다.ASP.Net의 기본 DB 연결
무엇을해야합니까? SQL Server (2008)를 새로 설치한다고 가정 할 때 웹 사이트의 데이터베이스에 대한 액세스를 구성하려면 어떻게해야합니까?
저는 보통 ASP.NET 응용 프로그램 풀을 NT AUTHORITY\NETWORK SERVICE
이 아닌 별도의 계정으로 실행하고 Windows 인증을 사용하여 SQL Server에 액세스합니다. 이 방법은 설정 파일에 암호를 저장하지 않는 이점이 있습니다.
단계 :
많은 앱에서 작동합니다. 보다 복잡한 보안 환경의 경우보다 정교한 전략이 필요할 수 있습니다.
나는 신뢰할 수있는 연결을 사용 했었지만 때때로 연결/응용 프로그램 풀에 사용 된 서비스 계정에 너무 많은 권한을 부여해야한다고 생각했습니다. 이제 SQL Server 계정을 사용하고 Application_Start 중에 연결 문자열을 암호화하도록 응용 프로그램을 설정합니다 (암호화되지 않은 경우). 실제로 사용자 자격 증명이 포함될 수있는 섹션은 암호화됩니다. appSetting을 사용하여 암호화 코드가 실행되는지 여부를 확인하므로 개발 환경에서 설정을 암호화하지 않습니다.
다른 권한을 가진 대형 앱의 경우 완전히 동의합니다. SQL Server 응용 프로그램 역할은 최소한의 권한을 얻는 또 다른 방법입니다. 그러나 많은 웹 응용 프로그램은 충분히 작아서 많은 다른 계정을 갖는 것이 타당하지 않습니다. 암호로 유지 관리 문제가 발생합니다 ... –
또한 SQL Server 계정을 사용합니다. 더 간단하고 문제를 해결하는 것이 좋습니다.
의미가 있습니다. 구현과 관련하여 링크를 제공 할 수 있습니까? – jcelgin
또한 데이터베이스에 대한 자신 만의 역할을 정의 할 수 있음을 명심하십시오. 모범 사례를 시도하는 경우 응용 프로그램 (관련 사용자)이 표준 역할의 본질적인 제한을 초과하여 수행 할 수있는 작업과 수행 할 수없는 작업을 제한하려고합니다 . – Murph