オブジェクト・ストレージの保護

このトピックでは、オブジェクト・ストレージのセキュリティ情報および推奨事項について説明します。

オブジェクト・ストレージ・サービスは高パフォーマンス・ストレージ・プラットフォームで、信頼性とコスト効率の高いデータ耐久性を実現します。分析データ、およびイメージやビデオなどのリッチ・コンテンツを含む、あらゆるコンテンツ・タイプの非構造化データを無制限に格納できます。

セキュリティ権限

オブジェクト・ストレージをセキュアに使用するには、セキュリティおよびコンプライアンスの責任について学びます。

通常、Oracleは、クラウド・オペレータ・アクセス制御やインフラストラクチャ・セキュリティ・パッチ適用などのクラウド・インフラストラクチャおよび操作のセキュリティを提供します。クラウド・リソースを安全に構成する責任はユーザーにあります。クラウドのセキュリティは、ユーザーとOracleの共同責任です。

Oracleは、次のセキュリティ要件を担当します。

  • 物理セキュリティ: Oracleは、Oracle Cloud Infrastructure内のすべてのサービスを実行するグローバル・インフラストラクチャの保護に責任を持ちます。このインフラストラクチャは、Oracle Cloud Infrastructureサービスを実行するハードウェア、ソフトウェア、ネットワーキングおよび設備で構成されます。

このページでは、セキュリティ権限について説明します。このページには、次の領域があります。

  • アクセス制御:権限をできるだけ制限します。ユーザーが作業を行うために必要なアクセス権のみを付与する必要があります。
  • 暗号化と機密性:暗号化キーとシークレットを使用してデータを保護し、保護されたリソースに接続します。これらのキーを定期的にローテーションします。

初期セキュリティ・タスク

Use this checklist to identify the tasks you perform to secure Object Storage in a new Oracle Cloud Infrastructure tenancy.

タスク 詳細情報
IAMポリシーを使用したユーザーおよびリソースへのアクセス権の付与 IAMポリシー
カスタム・キーを使用してリソースを暗号化 データの暗号化
リソースへのネットワーク・アクセスを保護 ネットワーク・セキュリティ
クラウド・ガードの有効化および構成(オプション) クラウド・ガード
セキュリティ・ゾーンの作成(オプション) セキュリティ・ゾーン

定期的なセキュリティ・タスク

オブジェクト・ストレージの使用開始後、このチェックリストを使用して、定期的に実行することをお薦めします。

タスク 詳細情報
暗号化キーのローテーション データの暗号化
クラウド・ガードで検出された問題への対応 クラウド・ガード
定期的なバックアップの実行 データの耐久性
データの移動時または異なる場所へのコピー時の整合性を確保します データ・セキュリティ
セキュリティ監査の実行 監査

IAMポリシー

ポリシーを使用して、オブジェクト・ストレージへのアクセスを制限します。

ポリシーは、誰がOracle Cloud Infrastructureリソースにアクセスできるか、およびその方法を指定します。詳細は、ポリシーの仕組みを参照してください。

グループに、その責任を実行するために必要な最小限の権限を割り当てます。各ポリシーには、グループが許可されるアクションを説明する動詞があります。最もアクセスの少ない量から、使用可能な動詞はinspectreaduseおよびmanageです。

object-familyのリソース・タイプ(バケットとオブジェクト)に対する最小特権アクセスを割り当てます。たとえば、inspect動詞では、バケットが存在するかどうかを確認し(HeadBucket)、コンパートメント内のバケットをリスト表示(ListBucket)できます。manage動詞は、リソースに対するすべての権限を付与します。

DELETE権限を、IAMユーザーおよびグループの最小セットに付与することをお薦めします。この演習では、認可されたユーザーや悪意のあるアクターからの不注意による削除からのデータの損失を最小限に抑えます。DELETE権限はテナンシ管理者およびコンパートメント管理者にのみ付与します。

次の例で、ポリシーの対象範囲はテナンシです。ただし、コンパートメント名を指定することによって、テナンシ内の特定のコンパートメントに対象範囲を絞り込むことができます。

特定のフォルダへのユーザー・アクセスの許可

特定のバケット名(target.bucket.name)と特定のオブジェクト・パターン(target.object.name)の組合せを使用して、バケット内の特定のフォルダへの任意のユーザーへのアクセスを許可できます。ワイルドカードとしてアスタリスクを使用すると、任意の文字列(/*name/ /name*//*name*/)のシーケンスを照合できます。

ALLOW any-user TO manage objects IN TENANCY where all {target.bucket.name = 'test-bucket', target.object.name = 'prod/*', request.user.id='ocid1.user.oc1..exampleuniqueID'}
特定のバケットにグループのアクセスを制限

グループによる特定のバケットへのアクセスを制限するには、特定のバケット名(target.bucket.name)、定義済タグ(target.tag.definition.name)を使用するか、任意の文字列のシーケンス(/*name//name*//*name*/)に一致するワイルドカードとしてアスタリスクを使用できます。

次の例では、BucketUsersグループ内のユーザーへのアクセスを特定のバケットに制限します。

Allow group BucketUsers to use buckets in tenancy
 where target.bucket.name='BucketFoo'

このポリシーを変更して、グループBucketUsers内のユーザーへのアクセスを、名前の先頭にProjectA_が付いているすべてのバケットに限定できます。

Allow group BucketUsers to use buckets in tenancy
 where target.bucket.name=/ProjectA_*/

接尾辞(/*_ProjectA/)または部分文字列(/*ProjectA*/)との一致を選択することもできます。

特定バケット内のオブジェクトへの読取りまたは書込みにグループのアクセスを制限

次の例では、グループBucketUsersBucketFooという名前の特定のバケットでのオブジェクトのリスト表示と読取りを許可します。

Allow group BucketUsers to read buckets in tenancy
Allow group BucketUsers to manage objects in tenancy
 where all {target.bucket.name='BucketFoo', 
            any {request.permission='OBJECT_INSPECT', 
                 request.permission='OBJECT_READ'}}

次のポリシーによって前のポリシーが変更され、BucketFooのオブジェクトのリスト表示と書込みが許可されます。

Allow group BucketUsers to read buckets in tenancy 
Allow group BucketUsers to manage objects in tenancy
 where all {target.bucket.name='BucketFoo', 
            any {request.permission='OBJECT_INSPECT', 
                 request.permission='OBJECT_CREATE'}}

このポリシーを、一連のバケットに対する読取りまたは書込みアクセスに限定することもできます。特定のバケットではなく、正規表現またはタグを使用します。

バケット・タグに基づいてオブジェクトへの読取りまたは書込みにグループのアクセスを制限

次の例では、定義済タグ"MyTagNamespace.TagKey = MyTagValue"のすべてのバケットからグループBucketUsers別にオブジェクトをリストおよび読取りできます。

Allow group BucketUsers to read buckets in tenancy
Allow group BucketUsers to manage objects in tenancy
 where all {target.bucket.tag.MyTagNamespace.TagKey='MyTagValue', 
            any {request.permission='OBJECT_INSPECT', 
                 request.permission='OBJECT_READ'}}

次のポリシーは、前のポリシーを変更し、バケットに定義されたタグが、ユーザーが属するグループの定義済タグと一致するすべてのバケットへのオブジェクトのリストおよび書込みを許可します。

Allow group BucketUsers to read buckets in tenancy 
Allow group BucketUsers to manage objects in tenancy
 where all {request.principal.group.tag.MyTagNamespace.TagKey=target.bucket.tag.MyTagNamespace.TagKey, 
            any {request.permission='OBJECT_INSPECT', 
                 request.permission='OBJECT_CREATE'}}
特定のユーザーに対するリソース・アクセスの制限

オブジェクト・ストレージ・リソースへのアクセスを特定のユーザーに制限するには、変数にユーザーのOCIDを指定するポリシーに条件を追加します。

次のポリシーでは、ObjectStorageコンパートメント内のリソースへのアクセスが、指定したユーザーOCIDに制限されます:

Allow any-user to read object-family in compartment ObjectStorage where request.user.id ='ocid1.user.oc1..<user_OCID>'
許可されたIPアドレスからのリクエストにアクセスを制限

許可されたIPアドレスから送信されたリクエストのみにアクセスを制限することができます。最初に、ネットワーク・ソースを作成して許可されるIPアドレスを指定します。次に、ポリシーに条件を追加して、ネットワーク・ソースのIPアドレスへのアクセスを制限します。

次のポリシーは、許可されるIPアドレスを定義するネットワーク・ソースcorpnet内のIPアドレスのみにアクセスを制限します:

Allow group CorporateUsers to manage object-family in tenancy where request.networkSource.name='corpnet'

ネットワーク・ソースの作成およびポリシーでの使用の詳細は、ネットワーク・ソースの管理を参照してください。

バケットまたはオブジェクトの削除の防止

次の例では、グループBucketUsersは、バケットおよびオブジェクトに対して削除を除くすべてのアクションを実行できます。

Allow group BucketUsers to manage objects in tenancy
 where request.permission!='OBJECT_DELETE' 
Allow group BucketUsers to manage buckets in tenancy
 where request.permission!='BUCKET_DELETE'

次の例は、特定のバケット(BucketFoo)に対するオブジェクト削除にさらに限定しています。

Allow group BucketUsers to manage objects in tenancy
  where any {target.bucket.name!='BucketFoo', 
             all {target.bucket.name='BucketFoo',
                  request.permission!='OBJECT_DELETE'}}
オブジェクトのWORMコンプライアンスの有効化

保持ルールを使用してWORMコンプライアンスを実現します。保持ルールはバケット・レベルで構成され、バケット内の個々のオブジェクトすべてに適用されます。保持ルールが削除されるまで(無期限ルール)または指定された期間(期限付きルール)、オブジェクトまたはオブジェクト・メタデータを更新、上書きまたは削除できません。

次のポリシーでは、BucketUsersがテナンシ内のバケットとオブジェクトを管理でき、BucketUsersが保持ルールを作成、管理および削除できます。これらのポリシーでは、指定した時間、BucketUsersが保持ルールをロックできます。

Allow group BucketUsers to manage buckets in tenancy
Allow group BucketUsers to manage objects in tenancy

制限がさらに限定的な次のポリシーを使用すると、BucketUsersは、保持ルールのロック以外のすべてのアクションをバケットとオブジェクトに実行できます。

Allow group BucketUsers to manage buckets in tenancy
 where request.permission!='RETENTION_RULE_LOCK'
Allow group BucketUsers to manage objects in tenancy
パブリック・バケット構成の防止

パブリック・バケットを作成したり既存のプライベート・バケットをパブリックにしたりするには、BUCKET_CREATE権限およびBUCKET_UDPATE権限が必要です。これらの権限を削除すると、ユーザーはパブリック・バケットを作成したり、既存のバケットをパブリックに変更したりできなくなります。

Allow group BucketUsers to manage buckets in tenancy
 where any {request.permission='BUCKET_INSPECT', 
            request.permission='BUCKET_READ', 
            request.permission='PAR_MANAGE'}

オブジェクト・ストレージ・ポリシーの詳細および例は、オブジェクト・ストレージ、アーカイブ・ストレージおよびデータ転送の詳細を参照してください。

アクセス制御

IAMポリシーの作成に加えて、事前認証済リクエストなどの機能を使用してオブジェクト・ストレージへのアクセスをロック・ダウンします。

パブリック・バケット

パブリック・バケットでは、認証されていない読取りや匿名の読取りがバケット内のすべてのオブジェクトに対して許可されます。パブリック・バケットを有効にする前に、計画しているパブリック・バケットのユースケースを慎重に評価してください。

IAM資格証明のないユーザーにバケットまたはオブジェクトへのアクセス権を付与するには、事前認証済のリクエストを使用することをお薦めします。デフォルトでは、バケットはパブリック・アクセスなしで作成されます(アクセス・タイプはNoPublicAccessに設定されます)。

既存のバケットのアクセス・タイプをObjectReadまたはObjectReadWithoutListに更新すると、バケットをパブリックにすることができます。意図せずにまたは悪意から既存のバケットがパブリックにされる可能性を最小限に抑えるため、BUCKET_UPDATE権限は最小限のIAMグループに限定してください。

次のCLIコマンドは、バケットに割り当てられたpublic-access-typeを戻します。

oci os bucket get -ns <your_namespace> --bucket-name <bucket_name> | grep "public-access-type"

属性public-access-typeの値がNoPublicAccessの場合、バケットはprivateです。その他の値(ObjectReadなど)は、パブリック・バケットを示します。

事前認証済リクエスト

IAM資格証明がないユーザーのオブジェクトまたはバケットの期限内アクセス権を付与するには、事前認証済リクエスト(PAR)を使用することをお薦めします。

事前認証済リクエストでは、オブジェクトにアクセスするための適切な権限を持つIAMユーザーが、これらのオブジェクトへの期限付きアクセス権を付与する特別なURLを作成できます。詳細は、事前認証済リクエストの使用を参照してください。

事前認証済リクエストの作成者には、PAR_MANAGE権限と、付与するアクセス・タイプに対する適切なIAM権限が必要です。次のいずれかに読取り、書込みまたは読取り/書込みアクセス権を付与する事前認証済リクエストを作成できます。

  • バケット内のすべてのオブジェクト。
  • バケット内の特定のオブジェクト。
  • 指定した接頭辞を持つバケット内のすべてのオブジェクト。

事前認証済リクエストの作成者は、付与するアクセス・タイプに対するPAR_MANAGE権限と適切なIAM権限を持っている必要があります。次のいずれかに対する読取り、書込みまたは読取り/書込みアクセス権を付与する事前認証済リクエストを作成できます:

複数のオブジェクトに適用されるリクエストの場合は、それらのオブジェクトをユーザーがリストできるようにするかどうかも決定できます。

バケットへの事前認証済リクエスト・アクセスは、監査ログに記録されます。オブジェクトへの事前認証済リクエスト・アクセスは、サービス・ログに記録されます。

重要

事前認証済リクエストを作成する際にシステムによって提供される一意のURLは、ユーザーがリクエスト・ターゲットにアクセスできる唯一の方法です。URLを耐久ストレージにコピーします。URLは作成時にのみ表示され、オブジェクト・ストレージに格納されず、後で取得することはできません。

次のCLIコマンドは、バケット内のオブジェクトPARのリストを戻します。

oci os preauth-request list -ns <your_namespace> -bn <bucket_name>

クラウド・ガード

クラウド・ガードを有効にし、それを使用してオブジェクト・ストレージのセキュリティの問題を検出して対応します。

問題を検出すると、クラウド・ガードは修正アクションを提案します。特定のアクションを自動的に実行するようにクラウド・ガードを構成することもできます。クラウド・ガードには、オブジェクト・ストレージの次のディテクタ・ルールが含まれます。

  • バケットはパブリックです
  • オブジェクト・ストレージ・バケットはOracle管理キーで暗号化されます
  • IAM顧客キーが作成されました

クラウド・ガードで使用可能なすべてのディテクタ・ルールのリストは、ディテクタ・レシピ・リファレンスを参照してください。

まだ実行していない場合は、クラウド・ガードを有効にし、リソースを含むコンパートメントをモニターするように構成します。クラウド・ガード・ターゲットを構成して、テナンシ全体(ルート・コンパートメントおよびすべてのサブコンパートメント)を調べたり、特定のコンパートメントのみをチェックできます。クラウド・ガード・スタート・ガイドを参照してください。

クラウド・ガードを有効にすると、検出されたセキュリティの問題を表示して解決できます。レポートされた問題の処理を参照してください。

セキュリティ・ゾーン

セキュリティ・ゾーンを使用すると、オブジェクト・ストレージ内のリソースがセキュリティのベスト・プラクティスに準拠できるようになります。

セキュリティ・ゾーンは、1つ以上のコンパートメントおよびセキュリティ・ゾーン・レシピに関連付けられます。セキュリティ・ゾーンのコンパートメントでリソースを作成および更新すると、Oracle Cloud Infrastructureは、レシピ内のセキュリティ・ゾーン・ポリシーのリストに対してこれらの操作を検証します。レシピ内のポリシーに違反している場合、操作は拒否されます。次のセキュリティ・ゾーン・ポリシーは、オブジェクト・ストレージのリソースに使用できます。

  • deny public_buckets
  • deny buckets_without_vault_key

すべてのセキュリティ・ゾーン・ポリシーのリストは、セキュリティ・ゾーン・ポリシーを参照してください。

既存のリソースをセキュリティ・ゾーン内のコンパートメントに移動するには、リソースがゾーンのレシピ内のすべてのセキュリティ・ゾーン・ポリシーに準拠している必要があります。同様に、セキュリティ・ゾーンの外部のコンパートメントは安全性が低い可能性があるため、セキュリティ・ゾーン内のリソースは移動できません。セキュリティ・ゾーンの管理を参照してください。

データの暗号化

ボールト・サービスで暗号化キーを作成してローテーションし、オブジェクト・ストレージ内のリソースを保護します。

オブジェクト・ストレージのすべてのデータは、保存中にAES-256を使用して暗号化されます。暗号化はデフォルトでオンになっており、オフにすることはできません。各オブジェクトは暗号化キーを使用して暗号化され、オブジェクト暗号化キーはマスター暗号化キーを使用して暗号化されます。

ボールトは、データの保護に使用する暗号化キーを格納する論理エンティティです。保護モードに応じて、キーはサーバーに格納されるか、可用性が高く耐久性のあるハードウェア・セキュリティ・モジュール(HSM)に格納されます。当社のHSMは、連邦情報処理標準(FIPS) 140-2セキュリティ・レベル3のセキュリティ認証を満たしています。ボールトの管理およびキーの管理を参照してください。

デフォルトの暗号化キーは特定のOracle Cloud Infrastructureリソースの作成時に自動的に生成できますが、Vaultサービスで独自のカスタム暗号化キーを作成および管理することをお薦めします。

カスタム暗号化キーを新しいバケットまたは既存のバケットに割り当てるには、次を参照してください:

各マスター暗号化キーには、キー・バージョンが自動的に割り当てられます。キーをローテーションすると、ボールト・サービスにより新しいキー・バージョンが生成されます。定期的なキーのローテーションは、1つのキー・バージョンによって暗号化または署名されるデータの量を制限します。キーが構成されている場合、キーのローテーションによりデータのリスクが軽減されます。キーの管理を参照してください。

IAMポリシーを使用して、暗号化キーの作成、ローテーションおよび削除を厳密に制限することをお薦めします。ボールト・サービスの詳細を参照してください。

オブジェクト・ストレージ・バケットに格納する前に、クライアント側暗号化を使用してオブジェクトを暗号化キーで暗号化することもできます。顧客が利用できる方法は、AWS SDK for Javaで利用できるクライアント側のオブジェクト暗号化サポートとともにAmazon S3互換APIを使用することです。このSDKの詳細は、Amazon S3互換API を参照してください。

データの耐久性

オブジェクト・ストレージでデータの定期的なバックアップを実行します。

未認可のユーザーによる意図しない削除や悪意のある削除によるデータ損失を最小限に抑えます。次をお薦めします:
  • オブジェクト・バージョニングを使用して、新しいオブジェクトのアップロード、既存のオブジェクトの上書き、またはオブジェクトの削除のたびに、オブジェクト・バージョンを自動的に作成します。
  • BUCKET_DELETE権限およびOBJECT_DELETE権限は、IAMの最小限のユーザーとグループに付与します。削除権限はテナンシとコンパートメントの管理者にしか与えないでください。

"Write Once、 Read Many" (WORM)コンプライアンスには、オブジェクトは削除または変更できないことが求められます。保持ルールを使用してWORMコンプライアンスを実現します。保持ルールはバケット・レベルで構成され、バケット内の個々のオブジェクトすべてに適用されます。保持ルールが削除されるまで(無期限ルール)または指定された期間(期限付きルール)、オブジェクトまたはオブジェクト・メタデータを更新、上書きまたは削除できません。

オブジェクト・ストレージ保存ルール機能のレコード管理および保存に関する規制要件を満たすための独立した評価については、Cohasset Associate 's SEC 17a-4 (f )、FINRA 4511 (c )、CFTC 1.31 (c )-( d)およびMiFID II Compliance Assessmentを参照してください。

データ・セキュリティ

オブジェクト・ストレージ内のデータの整合性を確保します。

オブジェクトのデータ整合性を検証するため、オブジェクト・ストレージにアップロードされたすべてのオブジェクトに対してMD5チェックサムが提供されます。オブジェクトのオフラインMD5チェックサムが、アップロード後にコンソールまたはAPIから返されるチェックサム値と一致していることを確認することをお薦めします。Oracle Cloud Infrastructureでは、オブジェクト・チェックサム値をbase64エンコーディングで提供します。base64エンコードされたチェックサム値を16進値に変換するには、次のコマンドを使用します:

python -c 'print "BASE64-ENCODED-MD5-VALUE".decode("base64").encode("hex")'

Linuxでは、オブジェクトのMD5チェックサム値を16進数形式で計算するためのmd5sumコマンドライン・ユーティリティが提供されています。

オブジェクト・ストレージでは、特にラージ・オブジェクトに対して、より効率的で回復力のあるアップロードを行うためのマルチパート・アップロードがサポートされています。マルチパート・アップロードでは、パート・サイズMiB単位で指定すると、大容量オブジェクトが小さいパートに分割されます。各パートは個別にアップロードされます。その後、オブジェクト・ストレージによってすべてのパートが結合され、元のオブジェクトが作成されます。いずれかのパートのアップロードが失敗した場合は、オブジェクト全体ではなく、それらのパートのみのアップロードを再試行する必要があります。

マルチパート・アップロードでは、各パートのMD5チェックサム値が計算され、個々のチェックサム値すべてに対してMD5チェックサムが計算されて、出力のMD5値が取得されます。マルチパート・アップロードで返されるMD5値を検証するには、オフラインMD5チェックサム計算と同じプロセスに従います。オブジェクト・ストレージへのマルチパート・アップロードのMD5チェックサム値のオフライン計算のサンプル・スクリプトは、https://gist.github.com/itemir/f5bc9fded6483cd79c89ebf4ca1cfd30で入手できます。

ネットワーク・セキュリティ

オブジェクト・ストレージ内のリソースに対するネットワーク・アクセスを保護します。

顧客クライアント(たとえば、SDKやCLI)とオブジェクト・ストレージのパブリック・エンドポイントの間で送信されるデータは、デフォルトではTLS 1.2で暗号化されます。FastConnectパブリック・ピアリングを使用すると、パブリック・インターネットではなくプライベート・ネットワーク経由でオブジェクト・ストレージにアクセスできます。オンプレミス・ネットワークへのアクセスを参照してください。

監査

オブジェクト・ストレージのアクセス・ログおよびその他のセキュリティ・データを見つけます。

監査サービスは、Oracle Cloud Infrastructureリソースに対するすべてのAPIコールを自動的に記録します。監査サービスを使用してテナンシ内のすべてのユーザー・アクティビティをモニターすることで、セキュリティおよびコンプライアンスの目標を達成できます。コンソール、SDKおよびコマンドライン(CLI)のコールはすべてAPIを経由するため、これらのソースからのすべてのアクティビティが含まれます。監査レコードは、認証されたフィルタ可能な問合せAPIを介して使用可能であるか、オブジェクト・ストレージからバッチ・ファイルとして取得できます。監査ログの内容には、発生したアクティビティ、アクティビティを開始したユーザー、リクエストの日時、リクエストのソースIP、ユーザー・エージェントおよびHTTPヘッダーが含まれます。監査ログ・イベントの表示を参照してください。

監査ログの例
{
  "datetime": 1642104527377,
  "logContent": {
    "data": {
      "additionalDetails": {
        "namespace": "mytenancy"
      },
      "availabilityDomain": "PHX-AD-1",
      "compartmentId": "ocid1.compartment.oc1..<unique_id>",
      "compartmentName": "mycompartment",
      "definedTags": null,
      "eventGroupingId": "<unique_id>",
      "eventName": "ListBuckets",
      "freeformTags": null,
      "identity": {
        "authType": null,
        "callerId": null,
        "callerName": null,
        "consoleSessionId": null,
        "credentials": "<key>",
        "ipAddress": "<ip_address>",
        "principalId": "<user_id>",
        "principalName": "<user_name>",
        "tenantId": "ocid1.tenancy.oc1..<unique_id>",
        "userAgent": "Oracle-JavaSDK/1.37.1 (Linux/4.14.35-2047.509.2.2.el7uek.x86_64; Java/1.8.0_301; Java HotSpot(TM) 64-Bit Server VM GraalVM EE 20.3.3/25.301-b09-jvmci-20.3-b18)"
      },
      "message": "List of buckets retrieved.",
      "request": {
        "action": "GET",
        "headers": {
          "Accept": [
            "application/json"
          ],
          "Connection": [
            "keep-alive"
          ],
          "User-Agent": [
            "Oracle-JavaSDK/1.37.1 (Linux/4.14.35-2047.509.2.2.el7uek.x86_64; Java/1.8.0_301; Java HotSpot(TM) 64-Bit Server VM GraalVM EE 20.3.3/25.301-b09-jvmci-20.3-b18)"
          ],
          "authorization": [
            "Signature headers=\"date (request-target) host\",keyId=\"<key>"
          ],
          "date": [
            "Thu, 13 Jan 2022 20:08:47 GMT"
          ],
          "opc-client-info": [
            "Oracle-JavaSDK/1.37.1"
          ],
          "opc-request-id": [
            "<unique_id>"
          ]
        },
        "id": "<unique_id>",
        "parameters": {
          "compartmentId": [
            "ocid1.compartment.oc1..<unique_id>"
          ],
          "fields": [
            "tags"
          ],
          "limit": [
            "1000"
          ],
          "param0": [
            "mytenancy"
          ]
        },
        "path": "/n/mytenancy/b?compartmentId=ocid1.compartment.oc1..<unique_id>&limit=1000&fields=tags"
      },
      "resourceId": "/n/mytenancy/b?compartmentId=ocid1.compartment.oc1..<unique_id>&limit=1000&fields=tags",
      "response": {
        "headers": {
          "Content-Length": [
            "2"
          ],
          "Content-Type": [
            "application/json"
          ],
          "access-control-allow-credentials": [
            "true"
          ],
          "access-control-allow-methods": [
            "POST,PUT,GET,HEAD,DELETE,OPTIONS"
          ],
          "access-control-allow-origin": [
            "*"
          ],
          "access-control-expose-headers": [
            "access-control-allow-credentials,access-control-allow-methods,access-control-allow-origin,content-length,content-type,date,opc-client-info,opc-request-id,x-api-id"
          ],
          "date": [
            "Thu, 13 Jan 2022 20:08:47 GMT"
          ],
          "opc-request-id": [
            "<unique_id>"
          ],
          "x-api-id": [
            "native"
          ]
        },
        "message": null,
        "payload": {
          "id": "/n/mytenancy/b?compartmentId=ocid1.compartment.oc1..<unique_id>&limit=1000&fields=tags",
          "resourceName": "/n/mytenancy/b?compartmentId=ocid1.compartment.oc1..<unique_id>&limit=1000&fields=tags"
        },
        "responseTime": "2022-01-13T20:08:47.377Z",
        "status": "200"
      },
      "stateChange": null
    },
    "dataschema": "2.0",
    "id": "<unique_id>",
    "oracle": {
      "compartmentid": "ocid1.compartment.oc1..<unique_id>",
      "ingestedtime": "2022-01-13T20:08:49.384Z",
      "loggroupid": "_Audit",
      "tenantid": "ocid1.tenancy.oc1..<unique_id>"
    },
    "source": "/n/mytenancy/b?compartmentId=ocid1.compartment.oc1..<unique_id>&limit=1000&fields=tags",
    "specversion": "1.0",
    "time": "2022-01-13T20:08:47.377Z",
    "type": "com.oraclecloud.objectstorage.listbuckets"
  }
}

テナンシでクラウド・ガードを有効にした場合、潜在的なセキュリティ上の問題であるユーザー・アクティビティがレポートされます。問題を検出すると、クラウド・ガードは修正アクションを提案します。特定のアクションを自動的に実行するようにクラウド・ガードを構成することもできます。クラウド・ガードの開始および報告された問題の処理を参照してください。