PUT Bucket metadata notification configuration要求

PUT Bucket metadata notification configuration要求を使用すると、個々のバケットで検索統合サービスを有効化できます。要求の本文に含めるメタデータ通知設定XMLでは、デスティネーション検索インデックスにメタデータを送信するオブジェクトを指定します。

この処理を完了するには、バケットのs3:PutBucketMetadataNotification権限またはrootアカウントが必要です。

要求

要求の本文にメタデータ通知設定が含まれている必要があります。各メタデータ通知設定には、1つ以上のルールが含まれています。各ルールでは、そのルールが適用されるオブジェクトと、StorageGRID Webscaleがオブジェクト メタデータを送信するデスティネーションを指定します。

オブジェクトはオブジェクト名のプレフィックスでフィルタリングできます。たとえば、プレフィックスが「/images」であるオブジェクトのメタデータをあるデスティネーションに送信し、プレフィックスが「/videos」であるオブジェクトのメタデータを別のデスティネーションに送信できます。

プレフィックスが重複する設定は無効で、送信時に拒否されます。たとえば、プレフィックスが「test」のオブジェクト用のルールとプレフィックスが「test2」のオブジェクト用のルールを含む設定は許可されません。

デスティネーションは、StorageGRID WebscaleエンドポイントのURNを使用して指定する必要があります。エンドポイントは、メタデータ通知設定が送信されたときに存在している必要があります。存在しない場合は、400 Bad Requestとして要求が失敗します。エラー メッセージ:Unable to save the metadata notification (search) policy. The specified endpoint URN does not exist: URN.

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>rule-status</Status>
        <Prefix>key-prefix</Prefix>
        <Destination>
           <Urn>arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Rule-2</ID>
         ...
    </Rule>
     ...
</MetadataNotificationConfiguration>

次の表は、メタデータ通知設定XMLの要素を示しています。

名前 説明 必須
MetadataNotificationConfiguration

メタデータ通知でオブジェクトとデスティネーションの指定に使用されるルール用のコンテナ タグ。

1つ以上のルール要素が含まれています。

Rule

指定したインデックスにメタデータを追加する必要があるオブジェクトを特定するルール用のコンテナ タグ。

プレフィックスが重複しているルールは拒否されます。

MetadataNotificationConfiguration要素に含まれています。

ID

ルールの一意の識別子。

Rule要素に含まれています。

×
Status

Statusには「Enabled」または「Disabled」を指定できます。無効になっているルールについては操作が実行されません。

Rule要素に含まれています。

Prefix

このプレフィックスと一致するオブジェクトにルールが適用され、そのメタデータが指定したデスティネーションに送信されます。

すべてのオブジェクトを対象にする場合は、空のプレフィックスを指定します。

Rule要素に含まれています。

Destination

ルールのデスティネーション用のコンテナ タグ。

Rule要素に含まれています。

Urn
オブジェクト メタデータが送信されるデスティネーションのURN。次のプロパティを持つStorageGRID WebscaleエンドポイントのURNを指定する必要があります。
  • esを3番目の要素にする必要があります。
  • URNの末尾に、メタデータが格納されるインデックスとタイプを、domain-name/myindex/mytypeの形式で指定する必要があります。
エンドポイントは、Tenant Managerまたはテナント管理APIを使用して設定されます。形式は次のとおりです。
  • arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype
  • urn:mysite:es:::mydomain/myindex/mytype

エンドポイントは設定XMLを送信する前に設定する必要があります。そうしないと、404エラーで設定が失敗します。

UrnはDestination要素に含まれています。

要求例

次の例は、バケットの検索統合を有効にする方法を示しています。この例では、すべてのオブジェクトのオブジェクト メタデータが同じデスティネーションに送信されます。

PUT /test1?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host
 
<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>Enabled</Status>
        <Prefix></Prefix>
        <Destination>
           <Urn>urn:sgws:es:::sgws-notifications/test1/all</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

この例では、プレフィックス/imagesに一致するオブジェクトのオブジェクト メタデータが1つ目のデスティネーションに送信され、プレフィックス/videosに一致するオブジェクトのオブジェクト メタデータが2つ目のデスティネーションに送信されます。

PUT /graphics?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host
 
<MetadataNotificationConfiguration>
    <Rule>
        <ID>Images-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/images</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-east-1:3333333:domain/es-domain/graphics/imagetype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Videos-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/videos</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-west-1:22222222:domain/es-domain/graphics/videotype</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>