2008-11-06 3 views
3

IBM DB2 v.9 창에서 누군가가 Server \ Administrator 사용자 에 의해 데이터베이스에 연결할 때 DB2 데이터베이스는 자동으로이 사용자에게 모든 권한을 허용하고 부여합니다. 그러나 경우에 따라 서버의 환경 관리자는 데이터베이스의 모든 데이터를 볼 필요가 없습니다. 그렇다면 관리자가 데이터베이스에 연결하는 것을 방지하는 방법은 무엇입니까?DB2에서 Windows 관리자 사용자의 사용 권한을 취소하는 방법은 무엇입니까?

답변

0

기본적으로 DB2 데이터베이스는 공개로 부여 된 CONNECT 권한으로 작성됩니다. 당신이 연결에서 일부 사용자를 제한하려면, 당신은 내가이 명령을 취소하려고 여러 번 만 들어 ...

GRANT CONNECT ON DATABASE TO <user1>, <user2>, ... 

그런 다음 PUBLIC

REVOKE CONNECT ON DATABASE FROM PUBLIC 
0

음에서 CONNECT 권한을 취소 할 필요가 관리자 계정으로 데이터베이스에 연결할 때 DB2가 자동으로 관리자에게 권한을 부여합니다.

다시 시도해 보겠습니다.

0

관리자가 sysadm 그룹에 속하기 때문에 일반적인 상황에서는 불가능하다고 생각합니다. 내가 생각할 수있는 (그러나 시도하지 않은)

옵션은 다음과 같습니다

  • 는 뭔가 다른 ("DB2 업데이트 DBM의 CFG SYSADM_GROUP ㅋ를 사용하여")에 SYSADM 그룹을 설정. 이 작업을 수행 할 때주의 사항 및 문제점을 확인하십시오.
  • OS 인증 사용을 중지하십시오. 다른 보안 플러그인을 사용하십시오 (8.2 이상 만). 이렇게하면 인증을 이동시켜 그룹을 새 위치 (예 : LDAP 서버)로 이동시킵니다. 그런 다음 Administrator를 새 위치에 추가하지 마십시오. 특히 Administrator를 sysadm 그룹에 다시 추가하지 마십시오.
1

9.5 및 이전 버전에서는 인스턴스를 실행하는 계정이 SYSADM이기 때문에 불가능합니다. 또한 관리자는 최소한 로컬 계정 암호를 재설정하고 이에 대한 액세스 권한을 얻을 수 있으므로 인스턴스 소유자 계정을 쓸모 없게 변경할 수 있습니다.

그러나 9.7 이상에서는 인스턴스 소유자가 더 이상 데이터에 액세스하지 않습니다. 하나의 옵션은 9.7로 업그레이드하는 것입니다. 또한 응용 프로그램에서 사용하는 연결에 대한 AD 계정을 설정할 수 있습니다. 로컬 관리자가 반드시 이러한 자격 증명으로 변경할 수있는 것은 아닙니다.

여전히 관리자는 궁극적으로 암호화되지 않은 (일반적으로 암호화되지 않은) 데이터베이스 파일에 액세스 할 수 있습니다. 대부분 보안의 관리 측면을 개선 할 수 있습니다.

0

Windows에서 데이터베이스 관리 프로그램 구성 매개 변수 SYSADM_GROUP은 인스턴스 레벨에서 SYSADM 권한을 가진 사용자를 제어합니다. SYSADM_GROUP이 비어 있으면 (Windows의 기본값처럼) DB2는 기본적으로 로컬 시스템에서 Administrators 그룹을 사용합니다.

이 문제를 해결하려면 Windows에서 새 그룹을 만든 다음 SYSADM_GROUP 값을 수정하여이 새 그룹을 사용할 수 있습니다. DB2 서비스가 실행되는 ID가이 새 그룹에 속하는지 확인하십시오. 이 변경 후 Administrators 그룹의 구성원은 더 이상 SYSADM 권한을 갖지 않습니다.

케빈 벡 (Kevin Beck)에 따르면 기본적으로 CONNECT 권한이 PUBLIC에 부여되므로 데이터베이스에 대한 CONNECT 권한도 제한 할 수 있습니다.

관련 문제