Kerberos
오존은 클러스터 보안을 위해 Kerberos 에 의존합니다 . 역사적으로 HDFS는 클러스터를 보호하지 않고 배포 할 수있는 격리 된 보안 네트워크에서 실행하는 것을 지원했습니다.
이 Ozone 릴리스는 해당 모델을 따르지만 곧 기본적 으로 보안으로 이동할 것 입니다. 오늘 오존 클러스터에서 보안을 활성화하려면 ozone.security.enabled 구성 을 true 로 설정 하고 hadoop.security.authentication 을 kerberos 로 설정해야합니다 .
특성값
ozone.security.enabled | 진실 |
hadoop.security.authentication | Kerberos |
토큰
Ozone은 Kerberos 서버의 과부하를 방지하기 위해 토큰 개념을 사용합니다. 초당 수천 개의 요청을 처리 할 때 Kerberos를 포함하면 제대로 작동하지 않을 수 있습니다. 따라서 인증이 완료되면 Ozone은 클라이언트에게 위임 토큰과 블록 토큰을 발급합니다. 이러한 토큰을 사용하면 애플리케이션이 마치 kerberos 티켓이있는 것처럼 클러스터에 대해 지정된 작업을 수행 할 수 있습니다. 오존은 다음과 같은 종류의 토큰을 지원합니다.
위임 토큰
위임 토큰을 사용하면 응용 프로그램이 사용자 kerberos 자격 증명을 가장 할 수 있습니다. 이 토큰은 kerberos 신원 확인을 기반으로하며 Ozone Manager가 발급합니다. 보안이 활성화되면 위임 토큰이 기본적으로 활성화됩니다.
블록 토큰
블록 토큰을 사용하면 클라이언트가 블록을 읽거나 쓸 수 있습니다. 이것은 데이터 노드가 사용자 / 클라이언트가 블록을 읽거나 수정할 수있는 권한이 있음을 알기 위해 필요합니다.
S3AuthInfo
S3는 매우 다른 공유 비밀 보안 체계를 사용합니다. Ozone은 AWS 서명 버전 4 프로토콜을 지원하며 최종 사용자 관점에서 Ozone의 S3는 AWS S3와 똑같이 느껴집니다.
S3 자격 증명 토큰은 코드에서 S3 인증 정보라고합니다. 이러한 토큰은 보안이 활성화 된 경우 기본적으로 활성화됩니다.
Ozone을 구성하는 각 서비스 데몬에는 Kerberos 서비스 주체 이름과 해당 kerberos 키 탭 파일이 필요합니다.
이러한 모든 설정은 ozone-site.xml에서 이루어져야합니다.
저장 컨테이너 관리자
SCM에는 두 개의 Kerberos 주체와 이러한 주체 모두에 해당하는 키 탭 파일이 필요합니다.
특성기술
hdds.scm.kerberos.principal | SCM 서비스 주체. 예 : scm/_HOST@REALM.COM |
hdds.scm.kerberos.keytab.file | SCM 데몬이 서비스 주체로 로그인하는 데 사용하는 keytab 파일입니다. |
hdds.scm.http.auth.kerberos.principal | SCM http 서버에 대해 SPNEGO를 사용하는 경우 SCM http 서버 서비스 주체. |
hdds.scm.http.auth.kerberos.keytab | SCM http 서버에 대해 SPNEGO를 사용할 수있는 경우 SCM http 서버가 서비스 주체로 로그인하는 데 사용하는 keytab 파일 |
오존 관리자
SCM과 마찬가지로 OM에는 두 개의 Kerberos 주체와이 두 주체 모두에 해당하는 키 탭 파일이 필요합니다.
특성기술
ozone.om.kerberos.principal | OzoneManager 서비스 주체. 예 : om/_HOST@REALM.COM |
ozone.om.kerberos.keytab.file | 서비스 주체로 로그인하기 위해 SCM 데몬이 사용하는 키탭 파일. |
ozone.om.http.auth.kerberos.principal | om http 서버에 대해 SPNEGO가 활성화 된 경우 Ozone Manager http 서버 서비스 주체. |
ozone.om.http.auth.kerberos.keytab | OM http 서버에 대해 SPNEGO를 사용하는 경우 OM http 서버에서 서비스 주체로 로그인하는 데 사용하는 keytab 파일입니다. |
S3 게이트웨이
S3 게이트웨이에는 하나의 서비스 주체가 필요하며 여기에는 ozone-site.xml에 필요한 구성 값이 필요합니다.
특성기술
ozone.s3g.http.auth.kerberos.principal | S3 게이트웨이 http 서버에 대해 SPNEGO가 활성화 된 경우 S3 게이트웨이 주체. 예 : HTTP/_HOST@EXAMPLE.COM |
ozone.s3g.http.auth.kerberos.keytab | SPNEGO가 S3 게이트웨이 http 서버에 대해 활성화 된 경우 S3 게이트웨이에서 사용하는 키탭 파일입니다. |