2.6. Object Storage
- 複合トークンとサービスアカウント
- 以前のリリースでは、データは専用のサービスアカウント (単一のオブジェクト) またはエンドユーザーのアカウント (複数のオブジェクト) に保管されていました。データがサービスアカウントに保管された場合には、コンテナーやサービスユーザーの削除で問題が生じる可能性があり、パスワードとトークンが脆弱でした。データがエンドユーザーのアカウントに保管された場合には、ユーザーがサービスと同じ名前を選択した場合に問題が生じ、Object Storage Service はトークンの整合性を違反するユーザーに対応する必要がありました。この問題は、以下のような方法で解決されました。
- Object Storage は、エンドユーザーの「通常」のアカウントとは別のアカウントにサービスデータを保管するようになりました。ただし、このデータは引き続き、アカウンティング目的でエンドユーザーのプロジェクトにリンクされます。サービスアカウントへのアクセスは、複合トークンによって管理されます。
- 複合トークンが導入されました。複合トークンは、データの保管時に 2 つの認証トークンを使用します。1 つは Object Storage Service、もう 1 つはエンドユーザーからです。2 つのトークンが設定されると、サービスとユーザーの承諾なしではデータは変更できなくなります。これにより、何らかの管理プロセスなしにエンドユーザーによってデータが削除されないように保護し、サービスがユーザーの代わりに意思決定を行うのを禁止します。
- グローバルで分散したクラスターの効率的なレプリケーション
- 以前のリリースでは、グローバルに分散したクラスターでは、レプリカは、各リージョンの各ノードにプッシュされていました。今回の更新により、Object Storage Service は (アフィニティーに基づいて) レプリカを各リージョンの単一のリモートノードのみにプッシュするようになりました。リモートノードは次にレプリカを同じリージョン内のプライマリーノードに分散します。今回の更新では、リージョン間のデータ転送量を削減することにより、パフォーマンスを安定化し、レプリケーションが遅延する可能性とデータ転送のコストの両方が削減されました。