2011-12-20 2 views
2

SQL Server 2008의 데이터베이스를 사용하는 웹 응용 프로그램이 있습니다.이 프로젝트의 개발자이고이 프로젝트는 다른 곳에서 호스팅되었습니다.데이터베이스 사용자로부터 테이블 숨기기

프로젝트를 관리자에게 전달했습니다. 이제 관리자는 SQL Server에 연결할 수 있지만 관리자가 데이터베이스 테이블을 볼 수 없게하려고합니다.

이렇게 할 방법이 있습니까?

+0

가능한 복제본 [Management Studio의 테이블 목록을 보는 데 필요한 권한] (http://stackoverflow.com/questions/1709150/permission-required-to-view-list-of-tables-in-management-studio) – Yuck

+1

@marc_s 편집에 항상 감사합니다. – Ehsan

+0

테이블의 내용이나 테이블의 정의 또는 둘 다를 볼 수 없다는 뜻입니까? – Anon246

답변

1

단순 : 아니오, 그는 DBA입니다. 그는 데이터베이스 작업을 할 수없는 상태에서 일을 할 수 없습니다. 이의 제기를 극복하십시오.

+0

그는 데이터베이스 관리자가 아닌 관리자입니다. 네트워크 관리자와 Active Directory의 도메인 관리자 그룹 정책 중 일부는 알 수 있습니다. – JonH

0

서버의 관리자 권한을 제한 할 수 없습니다.

또한 관리자는 암호화 키를 저장하는 거의 모든 테이블에 액세스 할 수 있으므로 TDE가 작동하지 않습니다.

보안 관리자이거나 다른 역할 중 하나 인 경우 기본적으로 이러한 역할은 데이터에 대한 사용 권한이 없으므로 문제가 해결 될 수 있습니다.

SQL 관리자는 일반적으로 데이터를 보호하기 위해 이러한 역할을 수행합니다. 그들은 그것을 필요로한다. 데이터가 매우 민감한 경우 민감한 값을 저장하기 전에 자체 암호화를 적용하는 등 다른 방법을 사용하여 데이터를 보호해야합니다. (AES 등)

+0

SQL Hero는 사실이 아니기 때문에 dbdefence는 DBA 역할을 제한하고 문서화되지 않은 SQL Server 기능을 사용하는 모든 사람의 스키마를 숨 깁니다. – user1309871

2

나는 이것을 ACT 제조사가 전에 보았습니다. 해당 제품은 SQL Server Express의 새 인스턴스를 설치하고 해당 프로세스의 일부로 인스턴스의 sa 암호를 암호화합니다. 따라서 다른 사람들이 제품 및 애드온 도구 이외의 것을 사용하여 데이터베이스에 연결할 수 없게됩니다. 정확히 어떻게 작동하는지 모르겠지만 sa 암호 나 비슷한 것을 암호화하여 검색 할 수 있습니다. 자신 만의 SQL Server 인스턴스를 설치하는 수줍음 나는 이것에 대해 어떻게 생각하는지 모르겠습니다. DBA가 SQL Server 인스턴스에 액세스 할 수 없으므로 응용 프로그램에서 데이터베이스 백업, 조정, 수정 등의 기능을 제공해야합니다.

덧붙여서 우리는 이것을 보았을 때 ACT를 버렸습니다. 우리 서버 중 하나에서 실행되는 블랙 박스의 아이디어와 같지 않았습니다.

결국, 당신은 아마 클라이언트 (보호자가 아닌)를 위해 추가 된 보호 계층이 악화의 가치가 없다는 것을 알게 될 것입니다. 데이타베이스 스키마의 형태로 독점적 인 정보를 얻을 수는 있지만, 클라이언트가 응용 프로그램을 리버스 엔지니어링하여 자신의 제품을 만들 가능성은 희박합니다. 비록 그들이했다하더라도, 좋은 소프트웨어를 만드는 것은 어렵습니다. 어쨌든 '제대로 된'소프트웨어를 얻지 못할 것입니다.

내 충고,이 점에 대해 걱정하지 마세요. 소프트웨어를 훌륭하게 만드려는 데 집중하십시오. 그래서 자신을 돌리거나 다른 곳을보아야 할 이유가 없습니다.

관련 문제