Firebird DB에서 데이터가 필요한 앱을 개발 중입니다. 이 DB를 만드는 사람은 SYSDBA 암호를 잊어 버렸고 새 사용자를 만들거나보기 만하면됩니다. DB와 통신하는 다른 앱도 사용자를 알 수 없습니다. 하지만 DB 서버에 연결하여 DB 파일 시스템을 볼 수 있습니다. 나는 MySQL이 백도어를 가지고 있다는 것을 알고있다, Firebird는 역시 가지고 있어야한다, 그렇지?Firebird/Interbase - SYSDBA없이 새 사용자 /보기 만들기
1
A
답변
3
Firebird에는 백도어가 없습니다. 그러나 데이터베이스를 다른 Firebird 설치로 이동하거나 SYSDBA
이라는 암호를 알고있는 다른 Firebird 설치에서 security2.fdb
을 사용할 수 있습니다.
다른 옵션으로는 RDB$ADMIN
역할의 구성원으로 로그인하여 암호를 다시 설정하는 것이 있지만이 방법은 보안 데이터베이스와 일반 데이터베이스 모두에서 SYSDBA
이 먼저 부여 된 것으로 가정합니다. 또는 Windows 관리자 그룹의 구성원으로 신뢰할 수있는 인증을 사용합니다. 그러나 Firebird 2.5에서는 보안 데이터베이스 (기본값이 아님)에 대해 AUTO ADMIN MAPPING
이 활성화되어 있어야합니다.
자세한 내용은 SQL user management commands을 참조하십시오.
그런데 '정상적인'사용자는 데이터베이스의 소유자와 RDB$ADMIN
을 만들고 데이터베이스의 구조를 추가하거나 수정하는 데이 사용자를 사용하는 것이 좋습니다 (이 경우 SYSDBA 계정이 필요할 가능성이 큽니다)).