REST API에 대한 보안 구성
REST API에 대해 구현된 보안 조치를 검토하고 시스템 보안 방법을 이해해야 합니다.
StorageGRID가 REST API에 보안을 제공하는 방법
StorageGRID 시스템이 REST API에 대한 보안, 인증 및 권한 부여를 구현하는 방법을 이해해야 합니다.
StorageGRID는 다음과 같은 보안 조치를 사용합니다.
-
로드 밸런서 끝점에 HTTPS가 구성되어 있는 경우 로드 밸런서 서비스와의 클라이언트 통신은 HTTPS를 사용합니다.
로드 밸런서 끝점을 구성할 때 HTTP를 선택적으로 활성화할 수 있습니다. 예를 들어, 테스트 또는 기타 비운영 목적으로 HTTP를 사용할 수 있습니다. 자세한 내용은 StorageGRID 관리 지침을 참조하십시오.
-
기본적으로 StorageGRID는 게이트웨이 노드에서 스토리지 노드 및 CLB 서비스와의 클라이언트 통신에 HTTPS를 사용합니다.
이러한 연결에 대해 HTTP를 선택적으로 활성화할 수 있습니다. 예를 들어, 테스트 또는 기타 비운영 목적으로 HTTP를 사용할 수 있습니다. 자세한 내용은 StorageGRID 관리 지침을 참조하십시오.
CLB 서비스는 더 이상 사용되지 않습니다. -
StorageGRID와 클라이언트 간의 통신은 TLS를 사용하여 암호화됩니다.
-
로드 밸런서 끝점이 HTTP 또는 HTTPS 연결을 허용하도록 구성되었는지 여부에 관계없이 그리드 내의 로드 밸런서 서비스와 스토리지 노드 간의 통신이 암호화됩니다.
-
클라이언트는 REST API 작업을 수행하기 위해 StorageGRID에 HTTP 인증 헤더를 제공해야 합니다.
보안 인증서 및 클라이언트 응용 프로그램
클라이언트는 게이트웨이 노드 또는 관리 노드의 로드 밸런서 서비스, 스토리지 노드 또는 게이트웨이 노드의 CLB 서비스에 직접 연결할 수 있습니다.
모든 경우에 클라이언트 응용 프로그램은 그리드 관리자가 업로드한 사용자 지정 서버 인증서 또는 StorageGRID 시스템에서 생성한 인증서를 사용하여 TLS 연결을 만들 수 있습니다.
-
클라이언트 응용 프로그램이 로드 밸런서 서비스에 연결되면 연결을 만드는 데 사용되는 특정 로드 밸런서 끝점에 대해 구성된 인증서를 사용합니다. 각 끝점마다 고유한 인증서가 있습니다. 이 인증서는 그리드 관리자가 업로드한 사용자 지정 서버 인증서이거나, 끝점 구성 시 그리드 관리자가 StorageGRID에서 생성한 인증서입니다.
-
클라이언트 응용 프로그램이 게이트웨이 노드의 스토리지 노드 또는 CLB 서비스에 직접 연결할 때 StorageGRID 시스템이 설치될 때 스토리지 노드에 대해 생성된 시스템 생성 서버 인증서(시스템 인증 기관이 서명)를 사용합니다. 또는 그리드 관리자가 그리드에 제공하는 단일 사용자 정의 서버 인증서입니다.
클라이언트가 TLS 연결을 설정하는 데 사용하는 인증서를 신뢰하도록 구성해야 합니다.
로드 밸런서 끝점 구성에 대한 정보와 TLS 연결에 대한 단일 사용자 지정 서버 인증서를 스토리지 노드 또는 게이트웨이 노드의 CLB 서비스에 직접 추가하는 방법에 대한 지침은 StorageGRID 관리 지침을 참조하십시오.
요약
다음 표에서는 S3 및 Swift REST API에서 보안 문제가 구현되는 방식을 보여 줍니다.
보안 문제 | REST API 구현 |
---|---|
연결 보안 |
TLS |
서버 인증 |
시스템 CA에서 서명한 X.509 서버 인증서 또는 관리자가 제공한 사용자 지정 서버 인증서입니다 |
클라이언트 인증 |
|
클라이언트 인증 |
|
TLS 라이브러리에 대해 지원되는 해시 및 암호화 알고리즘
StorageGRID 시스템은 TLS(전송 계층 보안) 세션을 설정할 때 클라이언트 응용 프로그램에서 사용할 수 있는 제한된 암호화 그룹 세트를 지원합니다.
지원되는 TLS 버전입니다
StorageGRID는 TLS 1.2 및 TLS 1.3을 지원합니다.
SSLv3 및 TLS 1.1(또는 이전 버전)은 더 이상 지원되지 않습니다. |
지원되는 암호 그룹
TLS 버전입니다 | 암호화 그룹의 IANA 이름입니다 |
---|---|
1.2 |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 |
1.2 |
TLS_ECDHE_RSA_WITH_CHACH20_POLY1305_SHA256 |
1.2 |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 |
1.3 |
TLS_AES_256_GCM_SHA384 |
1.3 |
TLS_CHACH20_POLY1305_SHA256 |
1.3 |
TLS_AES_128_GCM_SHA256 |
더 이상 사용되지 않는 암호화 그룹
다음 암호화 그룹은 더 이상 사용되지 않습니다. 이러한 암호화에 대한 지원은 이후 릴리스에서 제거됩니다.
IANA 이름입니다 |
---|
TLS_RSA_with_AES_128_GCM_SHA256 |
TLS_RSA_WITED_AES_256_GCM_SHA384 |