S3 / Swiftクライアントのセキュリティ
StorageGRIDテナントアカウントは、S3またはSwiftクライアントアプリケーションを使用してオブジェクトデータをStorageGRIDに保存します。クライアントアプリケーションに実装されているセキュリティ対策を確認する必要があります。
まとめ
次の表は、S3およびSwiftのREST APIのセキュリティの実装方法をまとめたものです。
Security 問題 の略 | REST API の実装 |
---|---|
接続のセキュリティ |
TLS |
サーバ認証 |
システム CA によって署名された X.509 サーバ証明書、または管理者から提供されたカスタムサーバ証明書 |
クライアント認証 |
|
クライアント許可 |
|
StorageGRIDによるクライアントアプリケーションのセキュリティの仕組み
S3およびSwiftクライアントアプリケーションは、ゲートウェイノードまたは管理ノード上のロードバランササービスに接続するか、またはストレージノードに直接接続できます。
-
ロードバランササービスに接続するクライアントは、状況に応じてHTTPSまたはHTTPを使用できます。 "ロードバランサエンドポイントの設定"。
HTTPSはTLSで暗号化されたセキュアな通信を提供するため、推奨されます。エンドポイントにセキュリティ証明書を添付する必要があります。
HTTPは安全性が低く、暗号化されていない通信を提供するため、非本番環境またはテストグリッドにのみ使用する必要があります。
-
ストレージノードに接続するクライアントは、HTTPSまたはHTTPも使用できます。
デフォルトはHTTPSで、推奨されます。
HTTPは安全性が低く、暗号化されていない通信を提供しますが、オプションで "有効" 非本番環境またはテスト用グリッドの場合。
-
StorageGRID とクライアント間の通信は、 TLS を使用して暗号化されます。
-
ロードバランササービスとグリッド内のストレージノードの間の通信は、ロードバランサエンドポイントが HTTP と HTTPS どちらの接続を受け入れるように設定されているかに関係なく暗号化されます。
-
REST API 処理を実行するには、クライアントが StorageGRID に HTTP 認証ヘッダーを提供する必要があります。を参照してください "要求を認証します" および "サポートされている Swift API エンドポイント"。
セキュリティ証明書とクライアントアプリケーション
いずれの場合も、クライアントアプリケーションは、グリッド管理者がアップロードしたカスタムサーバ証明書または StorageGRID システムが生成した証明書を使用して、 TLS 接続を確立できます。
-
ロードバランササービスに接続する場合、クライアントアプリケーションはロードバランサエンドポイント用に設定された証明書を使用します。各ロードバランサエンドポイントには独自の証明書があります。グリッド管理者がアップロードしたカスタムサーバ証明書、またはグリッド管理者がエンドポイントの設定時にStorageGRIDで生成した証明書のいずれかです。
を参照してください "ロードバランシングに関する考慮事項"。
-
クライアントアプリケーションは、ストレージノードに直接接続する場合、StorageGRID システムのインストール時にストレージノード用に生成されたシステム生成のサーバ証明書(システム認証局によって署名されたもの)を使用します。 または、グリッド管理者がグリッド用に提供した単一のカスタムサーバ証明書。を参照してください "カスタムのS3 / Swift API証明書を追加する"。
TLS 接続の確立に使用する証明書に署名した認証局を信頼するよう、クライアントを設定する必要があります。
TLS ライブラリのハッシュアルゴリズムと暗号化アルゴリズムがサポートされます
StorageGRIDシステムでは、クライアントアプリケーションがTLSセッションを確立するときに使用できる一連の暗号スイートがサポートされています。暗号を設定するには、[設定]>*[セキュリティ設定]*に移動し、 TLSおよびSSHポリシー*を選択します。
サポートされる TLS のバージョン
StorageGRID では、 TLS 1.2 と TLS 1.3 がサポートされています。
SSLv3 と TLS 1.1 (またはそれ以前のバージョン)はサポートされなくなりました。 |