2017-04-12 10 views
0

"엔티티 프레임 워크 데이터베이스의 첫 번째 접근 방식"을 사용하여 데스크톱 응용 프로그램을 개발 중입니다. 즉, 아무도 응용 프로그램에 로그인하지 않고도 데이터베이스에 액세스 할 수 없으며 아무도 데이터베이스 파일을 사용하여 직접 데이터를 추출 할 수 없습니다. 데이터베이스에는 20 개의 테이블이 있습니다. 데이터베이스를 암호화하려고 시도했지만 응용 프로그램이 시작될 때 데이터베이스 파일의 암호를 해독하여 연결을 해제하고 사용자가 응용 프로그램을 종료 할 때까지 해독해야합니다.응용 프로그램 자체에서만 열 수있는 SQL Server 데이터베이스를 어떻게 만듭니 까?

아니요, 저는 SQL Server에 대한 멍청한 질문입니다. 단지 해당 응용 프로그램에서만 열 수있는 내 C# 데스크톱 응용 프로그램에 대해 매우 안전한 SQL Server 데이터베이스를 만들고 싶습니다. SQL 서버에 연결할 수있는 두 가지 인증 모델 즉 Windows 인증 및 혼합 인증이 있다는 것을 알고 있습니다. 그러나 나는 Windows 인증을 사용하여 데이터베이스를 열지 않기를 원합니다.

오직 한 명의 사용자 만 암호로 데이터베이스를 열 수 있습니까?

+0

[SQL Server 로그인 사용 안 함 창 인증] (http://stackoverflow.com/a/19974042/5725863) –

+0

[항상 암호화 됨] (https://docs.microsoft.com/ko/) -us/sql/relational-databases/security/encryption/always-encrypted-database-engine)은 사용자의 요구 사항 중 일부를 처리하는 기능입니다. 데이터가 항상 암호화되어 있는지 확인합니다. SQL Server 2016에서 모든 버전에 포함되어 있습니다. –

+0

@ShakeerMirza 애플리케이션 배포시기는 어떨까요? – Luser

답변

0

당신이 사용하는 경우 SQL 데이터베이스 서버는 그러나 그것은 사람들이 파일을 복용하고

마찬가지로 SQL 익스프레스/서버에 퍼팅 중지 나던 아마 가장 가까운 당신의 앱에 대해서만 정말이 소형 : embedding sql express 월 도움이 되긴하지만 파일은 여전히 ​​.. ..

SQL이 인스턴스에 있다면 예를 들어 사용자 이름/암호로 제어 할 수 있지만 인스턴스에 대한 관리자 권한을 가진 사람은 누구나 들어갈 수 있습니다. 또한 필요

고려해야 할 그들이 어떻게 것 백업 데이터

+0

내 파일에 액세스 할 수 있지만 사용자가 응용 프로그램을 닫을 때 암호화 하겠지만 프로그램을 사용하는 동안 파일은 그 시간에 대해 dcrypted됩니다. – Luser

0

예. 이것을 쉽게 처리 할 수 ​​있습니다. >>로그인으로 이동 한 다음 암호가있는 사용자를 생성하십시오. 특정 데이터베이스에 대한 액세스 권한을 부여 할 수도 있습니다. 서버 역할 섹션을 지정할 수 있습니다.

+0

그러나 다른 상위 레버 계정도 해당 데이터베이스에 액세스 할 수 있습니다. – Luser