Kerberos로 자율운영 AI 데이터베이스 사용자 인증
Kerberos 네트워크 인증 프로토콜을 사용하여 데이터베이스 사용자를 인증하도록 전용 Exadata 인프라의 자율운영 AI 데이터베이스를 구성할 수 있습니다. Kerberos는 강력한 네트워크 인증 프로토콜입니다. 암호 키 암호화를 사용하여 사용자-서버 인증을 제공하여 강력한 인증을 가능하게 합니다.
-
Kerberos에 대한 전용 Exadata 인프라의 자율운영 AI 데이터베이스 지원은 Oracle 사용자의 Single Sign-On 및 중앙 집중식 인증의 이점을 제공합니다. Kerberos는 신뢰받는 타사 인증 시스템으로 공유 암호를 사용합니다. 타사에서는 안전한 것으로 간주하고 Single Sign-On 기능, 중앙화된 암호 저장, 데이터베이스 링크 인증 및 향상된 PC 보안을 제공합니다. 이 작업은 Kerberos 인증 서버를 통해 수행됩니다.
-
Kerberos 시스템은 티켓의 개념을 중심으로 회전합니다. 티켓은 사용자나 서비스를 식별하는 전자 정보 세트입니다. 티켓은 사용자와 네트워크 액세스 권한을 식별합니다.
-
Kerberos 기반 인증에서는 티켓에 대한 요청을 KDC(키 배포 센터)로 투명하게 보냅니다. 키 배포 센터에서 사용자를 인증하고 데이터베이스에 액세스할 수 있는 티켓을 부여합니다.
Kerberos 인증 시스템의 구성 요소
Kerberos 인증 시스템에 대한 개요를 제공하며,
-
영역은 인증 관리 도메인을 설정합니다. 각 영역에는 해당 특정 관리 도메인에 대한 사용자 및 서비스가 포함된 고유의 Kerberos 데이터베이스가 있습니다.
-
티켓은 KDC(키 배포 센터)에서 발행합니다. 클라이언트는 자신의 ID의 신뢰성을 입증하기 위해 Database Server 티켓을 제시합니다. 각 티켓에는 만료 및 갱신 시간이 있습니다.
-
Keytabs는 하나 이상의 주체에 대한 장기 키를 저장합니다. keytab 파일은
kadmin.local(MIT 키 배포 센터의 경우) 또는ktpass(Active Directory 키 배포 센터의 경우) 도구를 호출하여 생성됩니다. -
주체는 키 배포 센터 데이터베이스의 항목입니다. 각 사용자, 호스트 또는 서비스에는 주체가 지정됩니다. 주체는 키 배포 센터에서 티켓을 지정할 수 있는 고유 ID로,
-
자율운영 AI 데이터베이스의 Kerberos 지원은 서비스 주체의 이름을 구성하는 다양한 구성요소에 대해 다음 값을 사용합니다.
| 서비스 원금 구성요소 | 자율운영 AI 데이터베이스의 가치 |
|---|---|
kinstance |
이 값은 다음 질의를 사용하여 주: TNS 접속 문자열에 있는 |
kservice |
자율운영 AI 데이터베이스에는
자율운영 AI 데이터베이스 인스턴스에서 Kerberos가 사용으로 설정된 후 다음 질의를 사용하여 Kerberos 서비스 이름을 확인합니다. |
REALM |
KDC에서 지원하는 모든 영역입니다. REALM는 항상 대문자여야 합니다. |
자율운영 AI 데이터베이스에 대해 Kerberos 인증을 사용으로 설정하려면 Kerberos 구성 파일(krb.conf) 및 서비스 키 테이블 파일(v5srvtab)을 준비 상태로 유지해야 합니다. 이러한 파일 및 파일 가져오기 단계에 대한 자세한 내용은 Configuring Kerberos Authentication을 참조하십시오.
자율운영 AI 데이터베이스의 Kerberos 인증에 대한 참고 사항
전용 Exadata 인프라의 자율운영 AI 데이터베이스에서 Kerberos 인증을 계속하기 전에 다음 참고 사항을 검토하십시오.
-
자율운영 AI 데이터베이스에 대해 Kerberos 인증을 사용으로 설정해도 데이터베이스에 대해 비밀번호 기반 데이터베이스 인증을 계속 사용할 수 있습니다.
-
자율운영 AI 데이터베이스에는 언제든지 하나의 외부 인증 방법만 사용할 수 있습니다. 즉, Oracle Cloud Infrastructure(IAM), CMU-AD(Centrally Managed User with Active Directory), Azure AD 또는 Kerberos 인증 체계만 언제든지 사용으로 설정할 수 있습니다.
주: 유일한 예외는 CMU-AD에서 Kerberos 인증을 구성하여 Microsoft Active Directory 사용자에 대한 CMU-AD Kerberos 인증을 제공할 수 있다는 것입니다.
-
다음 도구에 대해서는 Kerberos 인증이 지원되지 않습니다.
-
Oracle Database API for MongoDB
-
Oracle REST Data Services
-
Oracle Machine Learning
-
APEX
-
Oracle Graph Studio
-
Oracle 데이터베이스 작업
-
-
Kerberos 인증을 사용으로 설정하여 ADMIN 사용자를 인증할 수 있습니다. OCI(Oracle Cloud Infrastructure) 콘솔에서 비밀번호 재설정 기능을 사용하여 ADMIN 사용자의 비밀번호를 재설정하고 손상된 keytab 파일로 인해 ADMIN 사용자의 인증이 실패할 경우 액세스 권한을 다시 얻을 수 있습니다.
-
Kerberos 인증은 자율운영 AI 데이터베이스 버전 19.27 이상에 대한 TCP 프로토콜로 지원됩니다.
-
DB_LINK 및 자율운영 Data Guard를 사용하는 데이터베이스에서는 Kerberos 인증이 지원되지 않습니다.
자율운영 AI 데이터베이스에서 Kerberos 인증 사용
전용 Exadata 인프라의 자율운영 AI 데이터베이스에 대해 Kerberos 인증을 사용으로 설정하려면 아래 나열된 단계를 따르십시오.
-
주어진 시간에 자율운영 AI 데이터베이스에 대해 하나의 외부 인증 체계만 사용으로 설정할 수 있으므로,
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION프로시저를 실행하여 데이터베이스에 대해 이미 사용으로 설정된 외부 인증 체계를 사용 안함으로 설정하십시오.프로시저를 실행하려면 ADMIN 사용자로 로그인하거나
DBMS_CLOUD_ADMIN에 대해EXECUTE권한이 있어야 합니다.BEGIN DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION; END; / -
Kerberos 구성 파일(
krb.conf) 및 서비스 키 테이블 파일(v5srvtab)을 가져옵니다. 이러한 파일 및 파일을 가져오는 데 필요한 단계에 대한 자세한 내용은 Oracle Database 19c Security Guide의 Configuring Kerberos Authentication 또는 Oracle Database 26ai Security Guide를 참조하십시오. -
Kerberos 구성 파일
krb.conf및v5srvtab를 객체 저장소의 버킷에 복사합니다.주: Oracle은 객체 저장소의 프라이빗 버킷에 Kerberos 구성 파일을 저장할 것을 권장합니다.
Oracle Cloud Infrastructure Object Store를 사용하는 경우 파일 업로드에 대한 자세한 내용은 오브젝트 스토리지에 데이터 넣기를 참조하십시오.
-
자율운영 AI 데이터베이스에 대해 외부 인증으로 Kerberos를 사용으로 설정하려면
DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION프로시저를 실행하고paramsJSON 인수를 사용하여 위치 URI를 전달합니다. 구성 파일krb.conf및v5srvtab는location_uri매개변수에 지정된 오브젝트 스토리지 위치에 배치해야 합니다.예:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( type => 'KERBEROS', params => JSON_OBJECT('location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o', 'credential_name' value 'my_credential_name') ); END; /주: Microsoft Active Directory 사용자에 대한 CMU-AD Kerberos 인증을 제공하려면 위 예에서
type를CMU로 설정하여 CMU-AD에서 Kerberos 인증을 사용으로 설정할 수 있습니다.이 예에서
namespace-string은 Oracle Cloud Infrastructure 오브젝트 스토리지 네임스페이스이고bucketname은 버킷 이름입니다. 자세한 내용은 객체 스토리지 네임스페이스 이해를 참조하십시오.이 단계에서 사용하는
credential_name은 객체 저장소에 대한 인증서입니다.location_uri가 사전 인증된 URL인 경우credential_name를 제공할 필요가 없습니다.그러면 데이터베이스에
KERBEROS_DIR라는 디렉토리 객체가 생성되고 이 인증서를 사용하여 객체 저장소 위치에서 디렉토리 객체로 Kerberos 구성 파일을 다운로드합니다.kerberos_service_name매개변수를 사용하여 Kerberos 서비스 이름을 지정할 수 있습니다. 예:BEGIN DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION( type =>'KERBEROS', params => JSON_OBJECT( 'location_uri' value 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o', 'credential_name' value 'my_credential_name' 'kerberos_service_name' value 'oracle' )); END; / -
Kerberos 인증을 사용으로 설정한 후 객체 저장소에서
krb.conf및v5srvtab구성을 제거합니다. 로컬 객체 저장소 메소드를 사용하여 이러한 파일을 제거하거나DBMS_CLOUD.DELETE_OBJECT를 사용하여 객체 저장소에서 파일을 삭제할 수 있습니다.
오브젝트 스토리지에 대한 자세한 내용은 Oracle Cloud Infrastructure Object Storage로 이동 및 버킷 생성을 참조하십시오.
자세한 내용은 ENABLE_EXTERNAL_AUTHENTICATION Procedure를 참조하십시오.
자율운영 AI 데이터베이스에서 Kerberos 인증 사용 안함
데이터베이스에서 다른 외부 인증 체계를 사용으로 설정하기 전에 DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION 프로시저를 실행하는 Kerberos 인증을 사용 안함으로 설정해야 합니다.
이 프로시저를 실행하려면 ADMIN 사용자로 로그인하거나 DBMS_CLOUD_ADMIN에 대해 EXECUTE 권한이 있어야 합니다.
BEGIN
DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
END;
/
자세한 내용은 DISABLE_EXTERNAL_AUTHENTICATION Procedure를 참조하십시오.
주: Microsoft Active Directory 사용자에 대한 CMU-AD Kerberos 인증을 제공하려면 Kerberos 인증을 사용 안함으로 설정하지 않고도 CMU-AD 인증을 계속 구성해야 합니다.