12.2. サービスメッシュおよび OpenShift Serverless での JSON Web トークン認証の使用


Knative サービスの JSON Web Token (JWT) 認証を有効にするには、有効な JWT を使用した要求のみを許可するサーバーレスアプリケーションの namespace にポリシーを作成します。

前提条件

重要

knative-serving および knative-serving-ingress などのシステム namespace の Pod へのサイドカー挿入の追加はサポートされていません。

手順

  1. 以下の Policy リソースを YAML ファイルにコピーします。

    重要

    パスの /metrics および /healthz は、knative-serving namespace のシステム Pod からアクセスされるため、excludedPaths に組み込まれる必要があります。

    apiVersion: authentication.istio.io/v1alpha1
    kind: Policy
    metadata:
      name: default
    spec:
      origins:
      - jwt:
          issuer: testing@secure.istio.io
          jwksUri: "https://raw.githubusercontent.com/istio/istio/release-1.6/security/tools/jwt/samples/jwks.json"
          triggerRules:
          - excludedPaths:
            - prefix: /metrics
            - prefix: /healthz
      principalBinding: USE_ORIGIN
    Copy to Clipboard Toggle word wrap
  2. Policy リソースの YAML ファイルを適用します。

    $ oc apply -f <filename>
    Copy to Clipboard Toggle word wrap

検証

  1. curl 要求トを使用して Knative サービス URL を取得しようとすると、これは拒否されます。

    $ curl http://hello-example-default.apps.mycluster.example.com/
    Copy to Clipboard Toggle word wrap

    出力例

    Origin authentication failed.
    Copy to Clipboard Toggle word wrap

  2. 有効な JWT で要求を確認します。

    1. 以下のコマンドを入力して、有効な JWT トークンを取得します。

      $ TOKEN=$(curl https://raw.githubusercontent.com/istio/istio/release-1.6/security/tools/jwt/samples/demo.jwt -s) && echo "$TOKEN" | cut -d '.' -f2 - | base64 --decode -
      Copy to Clipboard Toggle word wrap
    2. curl 要求ヘッダーで有効なトークンを使用してサービスにアクセスします。

      $ curl http://hello-example-default.apps.mycluster.example.com/ -H "Authorization: Bearer $TOKEN"
      Copy to Clipboard Toggle word wrap

      これで要求が許可されます。

      出力例

      Hello OpenShift!
      Copy to Clipboard Toggle word wrap

12.2.1. 追加リソース

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat