7.2.6. CORS
CORS (Cross-Origin Resource Sharing) を使用すると、Kafka Bridge HTTP の設定 で Kafka クラスターにアクセスするために許可されるメソッドおよび元の URL を指定できます。
Kafka Bridge の CORS 設定例
# ...
cors:
allowedOrigins: "https://strimzi.io"
allowedMethods: "GET,POST,PUT,DELETE,OPTIONS,PATCH"
# ...
CORS では、異なるドメイン上のオリジンソース間での シンプルな リクエストおよび プリフライト リクエストが可能です。
シンプルなリクエストは、GET、HEAD、POSTの各メソッドを使った標準的なリクエストに適しています。
プリフライトリクエストは、実際のリクエストが安全に送信できることを確認する最初のチェックとして HTTP OPTIONS リクエストを送信します。確認時に、実際のリクエストが送信されます。プリフライトリクエストは、PUTやDELETEなど、より高い安全性が求められるメソッドや、非標準のヘッダーを使用するメソッドに適しています。
すべての要求には、HTTP 要求のソースであるヘッダーの Origin 値が必要です。
7.2.6.1. シンプルなリクエスト リンクのコピーリンクがクリップボードにコピーされました!
たとえば、この単純なリクエストヘッダーは、オリジンを https://strimzi.io と指定します。
Origin: https://strimzi.io
ヘッダー情報がリクエストに追加されます。
curl -v -X GET HTTP-ADDRESS/bridge-consumer/records \
-H 'Origin: https://strimzi.io'\
-H 'content-type: application/vnd.kafka.v2+json'
Kafka Bridgeからの応答では、Access-Control-Allow-Originヘッダーが返されます。
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
- 1
- アスタリスク(
*)を返すと、リソースをどのドメインでもアクセスできることが分かります。