機械翻訳について

事前認証済リクエストの使用

事前認証済リクエストは、リクエスト作成者がオブジェクトにアクセスする権限を持っている場合、ユーザーが独自の資格証明を持たずにバケットまたはオブジェクトにアクセスできるようにする手段を提供します。

たとえば、ユーザーがAPIキーを所有せずにバケットにバックアップをアップロードする操作をサポートするリクエストを作成できます。 または、ビジネス・パートナがAPIキーを所有せずにバケット内の共有データを更新できるリクエストを作成できます。

事前認証済リクエストの作成時に、一意のURLが生成されます。 このURLを提供するユーザーは、curlやwgetなどの標準HTTPツールを使用して、事前認証済リクエストで識別されるObject Storageリソースにアクセスできます。

重要:

バケットまたはオブジェクトへの事前認証済アクセスのビジネス要件およびセキュリティ上の影響を評価します。

事前認証済リクエストURLは、リクエストで識別されたターゲットへのURLアクセス権を持つすべてのユーザーに提供します。 URLの配布を慎重に管理します。

概念の詳細は、「Oracle Private Cloud Applianceコンセプト・ガイド」「オブジェクト・ストレージの概要」の項を参照してください。

事前認証済リクエストのリスト

この手順を使用して、その他のコマンドに必要な事前認証済リクエストIDの取得など、事前認証済リクエストに関する情報を取得します。

ノート:

事前認証済リクエストのリストには、事前認証済リクエストの作成時にシステムによって提供される一意のURLは表示されません。 URLは作成時にのみ表示され、後で取得することはできません。

OCI CLIの使用

  • バケット内のすべての事前認証済リクエストのリスト

    1. コマンドを実行するために必要な情報を収集します。

    2. コマンドを実行します。

      構文(1行に入力):

      oci os preauth-request list
      --namespace-name <object_storage_namespace> 
      --bucket-name <bucket_name>

      例:

      oci os preauth-request list \
      --namespace-name examplenamespace  \
      --bucket-name MyBucket
      {
        "data": [
          {
            "access-type": "ObjectRead",
            "id": "5299a6f9-55c7-4805-88ca-b270c9a9e94f",
            "name": "PAR_ObjRead",
            "object-name": "compute.log",
            "time-created": "2021-06-10T20:34:01+00:00",
            "time-expires": "2021-07-30T23:55:00+00:00"
          },
          {
            "access-type": "AnyObjectWrite",
            "id": "783cd56b-9df5-4518-aacf-f523deae5102",
            "name": "PAR-all-objectsRW",
            "object-name": null,
            "time-created": "2021-06-10T20:49:11+00:00",
            "time-expires": "2021-07-30T23:54:59+00:00"
          },
          {
            "access-type": "ObjectRead",
            "id": "2ea48624-16ed-4d81-95ca-b23ea750ed3d",
            "name": "PAR-OS-READ",
            "object-name": "backup.log",
            "time-created": "2021-06-10T21:16:47+00:00",
            "time-expires": "2021-07-30T23:55:00+00:00"
          }
        ]
      }
  • 特定の事前認証済リクエストの詳細の取得
    1. コマンドを実行するために必要な情報を収集します。

    2. コマンドを実行します。

      構文(1行に入力):

      oci os preauth-request get
      --namespace-name <object_storage_namespace>
      --bucket-name <bucket_name>
      --par-id <preauth-id>

      例:

      oci os preauth-request get  \
      --namespace-name examplenamespace  \
      --bucket-name MyBucket  \
      --par-id 5299a6f9-55c7-4805-88ca-b270c9a9e94f
      {
        "data": {
          "access-type": "ObjectRead",
          "id": "5299a6f9-55c7-4805-88ca-b270c9a9e94f",
          "name": "PAR_ObjRead",
          "object-name": "compute.log",
          "time-created": "2021-06-10T20:34:01+00:00",
          "time-expires": "2021-07-30T23:55:00+00:00"
        }
      }

バケット内のすべてのオブジェクトに対する事前認証済リクエストの作成

OCI CLIの使用

  1. コマンドを実行するために必要な情報を収集します。

    • ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照)

    • バケット名(oci os bucket list)、「バケットのリスト」を参照

    • この事前認証済リクエストの名前。

    • アクセス・タイプは、次のいずれかのアイテムです:

      • AnyObjectReadは、バケット内のすべてのオブジェクトに対する読取りを許可します。

      • AnyObjectWriteは、バケット内のすべてのオブジェクトへの書込みを許可します。

      • AnyObjectReadWriteでは、バケット内のすべてのオブジェクトに対する読取りと書込みが許可されます。

      ノート:

      バケット内のオブジェクトのリストは、デフォルトでは拒否されます。 --access-typeAnyObjectReadまたはAnyObjectReadWriteの場合、ユーザーがバケット内のオブジェクトをリストできる事前認証済リクエストの作成時に、オプションの--bucket-listing-action ListObjectsパラメータを指定できます。

    • 期限切れ時間は必須であり、RFC 3339タイムスタンプである必要があります。 たとえば: 2017-09-01T00:09:51.000+02:00

  2. コマンドを実行します。

    構文(1行に入力):

    oci os preauth-request create
    --namespace-name <object_storage_namespace> 
    --bucket-name <bucket_name>
    --name <preauthenticated_request_name> 
    --access-type <access_value>
    --time-expires <timestamp>

    この例では、バケット内のすべてのオブジェクトに対する読取りと書込みを許可する事前認証済リクエストを作成します:

     oci os preauth-request create  \
    --namespace-name examplenamespace  \
    --bucket-name MyBucket  \
    --name PAR-all-objectsRW  \
    --access-type AnyObjectWrite  \
    --time-expires '2021-07-30 23:55'
    {
      "data": {
        "access-type": "AnyObjectWrite",
        "access-uri": "/p/KOCRWzqBilJmIsaBbJNelKLWcOxwRLq/n/examplenamespace/b/MyBucket/o/",
        "id": "783cd56b-9df5-4518-aacf-f523deae5102",
        "name": "PAR-all-objectsRW",
        "object-name": null,
        "time-created": "2021-06-10T20:49:11+00:00",
        "time-expires": "2021-07-30T23:54:59+00:00"
      }
    }
  3. 重要- access-uriを永続ストレージにコピーします。

    システムによって提供される一意のaccess-uriは、ユーザーがリクエスト・ターゲットとして指定されたバケットまたはオブジェクトにアクセスするために使用できるURLを作成する唯一の方法です。

    The access-uri 「作成時にのみ表示され、後で取得することはできません。」

  4. 一意のaccess-uriからURLを作成します。

    「事前認証済リクエストURLの作成」を参照してください。

特定のオブジェクトの事前認証済リクエストの作成

OCI CLIの使用

  1. コマンドを実行するために必要な情報を収集します。

    • ネームスペース(「オブジェクト・ストレージ・ネームスペースの取得」を参照)

    • バケット名(oci os bucket list)、「バケットのリスト」を参照

    • この事前認証済リクエストの名前。

    • アクセス・タイプは、次のいずれかの値です:

      • AnyObjectReadは、バケット内のすべてのオブジェクトに対する読取りを許可します。

      • AnyObjectWriteは、バケット内のすべてのオブジェクトへの書込みを許可します。

      • AnyObjectReadWriteでは、バケット内のすべてのオブジェクトに対する読取りと書込みが許可されます。

      ノート:

      バケット内のオブジェクトのリストは、デフォルトでは拒否されます。 --access-typeAnyObjectReadまたはAnyObjectReadWriteの場合、ユーザーがバケット内のオブジェクトをリストできる事前認証済リクエストの作成時に、オプションの--bucket-listing-action ListObjectsパラメータを指定できます。

    • 期限切れ時間は必須であり、RFC 3339タイムスタンプである必要があります。 たとえば: 2017-09-01T00:09:51.000+02:00

    • オブジェクト名またはnull

  2. 構文(1行に入力):

    oci os preauth-request create
    --namespace-name <object_storage_namespace> 
    --bucket-name <bucket_name> 
    --name <preauthenticated_request_name> 
    --access-type <access_value> 
    --time-expires <timestamp> 
    -on <object_name_or_null>

    例:

    oci os preauth-request create
    --namespace-name examplenamespace  \ 
    --bucket-name MyBucket 
    --name PAR-OS-READ 
    --access-type ObjectRead 
    --time-expires '2021-07-30 23:55' 
    -on compute.log
    
    {
      "data": {
        "access-type": "ObjectRead",
        "access-uri": "/p/eWvgyLcDthhvVUNkVaejymgDTOILHli/n/examplenamespace/b/MyBucket/o/compute.log",
        "id": "2ea48624-16ed-4d81-95ca-b23ea750ed3d",
        "name": "PAR-OS-READ",
        "object-name": "compute.log",
        "time-created": "2021-06-10T21:16:47+00:00",
        "time-expires": "2021-07-30T23:55:00+00:00"
      }
    }
  3. 重要- access-uriを永続ストレージにコピーします。

    システムによって提供される一意のaccess-uriは、ユーザーがリクエスト・ターゲットとして指定されたバケットまたはオブジェクトにアクセスするために使用できるURLを作成する唯一の方法です。

    The access-uri 「作成時にのみ表示され、後で取得することはできません。」

  4. 一意のaccess-uriからURLを作成します。

    「事前認証済リクエストURLの作成」を参照してください。

事前認証済リクエストURLの作成

一意のaccess-uriを設定した後、ユーザーが事前認証済オブジェクトにアクセスできるようにするアクセスURLを作成できます。

  1. この構文を使用してURLを作成します。

    構文:

    https://<pca_fqdn><access-uri>

    説明:

    例:

    https://mypca01.example.com/p/MrxLFkKlFkIlNDhvhcZnrjbUAlsoeah/n/mynamespace/b/my-bucket/o/my-object

事前認証済リクエストの削除

OCI CLIの使用

  1. コマンドを実行するために必要な情報を収集します。

  2. 構文(1行に入力):

    oci os preauth-request delete
    --namespace-name <object_storage_namespace> 
    --bucket-name <bucket_name>
    --par-id <preauthenticated_request_id>

    例:

    oci os preauth-request delete  \
    --namespace-name examplenamespace  \
    --bucket-name MyBucket  \
    --par-id 2ea48624-16ed-4d81-95ca-b23ea750ed3d
    Are you sure you want to delete this resource? [y/N]: y

事前認証済リクエストのオブジェクトのリスト

一意のリクエストURLを使用すると、curlなどのツールを使用して、事前認証済リクエストを使用してデータをリスト、読取りおよび書込みできます。

curlの使用

  • 構文(1行に入力):

    $ curl -X GET <unique-PAR-URL>

    例:

    $ curl -X GET    \
    https://objectstorage.us-example-1.example.com/p/CoO26YkSARiRevWlDWJD_QUvtFPUocn/n/examplenamespace/b/MyParBucket/o/
    
    {"objects":[{"name":"InfoWorld DeepDive - Tips  for Git and GitHub Users.pdf"},{"name":"OCI_User_Guide.pdf"},
    {"name":"OracleCorporateTerminologyUsageGuideRedwood.pdf"},{"name":"VPN.png"},{"name":"eventslogreference.htm"},
    {"name":"functionslogreference.htm"},{"name":"glob.txt"},{"name":"loadbalancerreference.htm"},{"name":"objectstoragelogreference.htm"},
    {"name":"servicechanges.html"},{"name":"servicediscovery.dita"},{"name":"serviceessentials.html"},{"name":"servicelogreference.htm"},
    {"name":"services.html"}]}

事前認証済リクエストを使用したオブジェクトのアップロード

一意のリクエストURLを使用すると、curlなどのツールを使用して、事前認証済リクエストを使用してデータの読取りと書込みを行うことができます。

curlの使用

  • 構文(1行に入力):

    $ curl -X PUT --data-binary '@<local-filename>' <unique-PAR-URL>

    例:

    $ curl -X PUT    \
    --data-binary '@using-dita-guide.pdf'    \
    https://objectstorage.us-example-1.example.com/p/lnaqMuXWef_lhTxCiS9ngCw/n/examplenamespace/b/MyParBucket/o/using-dita-guide.pdf

事前認証済リクエストを使用したオブジェクトのダウンロード

一意のリクエストURLを使用すると、curlなどのツールを使用して、事前認証済リクエストを使用してデータの読取りと書込みを行うことができます。

curlの使用

  • 構文(1行に入力):

    $ curl -X GET <unique-PAR-URL>

    例:

    $ curl -X GET    \
    https://objectstorage.example.com/p/tnjDhazP9o6s2KzLyFUxILQzSamEp/n/examplenamespace/b/MyParBucket/o/OCI_User_Guide.pdf 
    '@data.1''@data.2''@data.3'