5.6.7.2. コマンドラインでの HTTP リクエストの認証
HTTP POST リクエストを Red Hat SSO サーバーに送信してトークンを要求します。以下の例では、CLI ツール jq を使用して JSON 応答からトークン値を抽出します。
前提条件
- セキュリティー保護されたエンドポイント URL のサンプル。詳細はを参照してください 「セキュアなアプリケーション API エンドポイントの取得」。
-
jq
コマンドラインツール(任意)。ツールのダウンロードと、詳細な情報は、https://stedolan.github.io/jq/ を参照してください。
手順
curl
、認証情報、および<SSO_AUTH_SERVER_URL>
でアクセストークンを要求し、jq
コマンドで応答からトークンを抽出します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow <SSO_AUTH_SERVER_URL>
はsecure-sso
サービスの URL です。ユーザー名、
パスワード
、および
client_secret などの属性は通常シークレット
に保存されますが、上記のコマンドはこの例でデモ目的でこの認証情報を使用します。jq
を使用してトークンを抽出しない場合は、curl
コマンドのみを実行して、アクセストークンを手動で抽出できます。注記-sk
オプションは、自己署名証明書から生じる障害を無視するように curl に指示します。実稼働環境ではこのオプションを使用しないでください。macOS に、curl
バージョン 7.56.1 以上がインストールされて
いる必要があります。OpenSSL で構築する必要があります。
Secured サービスを呼び出します。アクセス(ベアラー)トークンを HTTP ヘッダーに割り当てます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例5.2 Access(Bearer)トークンを含む
GET
リクエストヘッダーの例> GET /api/greeting HTTP/1.1 > Host: <SERVICE_HOST> > User-Agent: curl/7.51.0 > Accept: */* > Authorization: Bearer <TOKEN>
> GET /api/greeting HTTP/1.1 > Host: <SERVICE_HOST> > User-Agent: curl/7.51.0 > Accept: */* > Authorization: Bearer <TOKEN>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <SERVICE_HOST>
はセキュアなエンドポイントの URL です。詳細はを参照してください 「セキュアなアプリケーション API エンドポイントの取得」。アクセストークンの署名を確認します。
アクセストークンは JSON Web トークン であるため、JWT デバッガー を使用してデコードできます。
- Web ブラウザーで、JWT デバッガー の Web サイトに移動します。
Algorithm ドロップダウンメニューから
RS256
を選択します。注記選択後に Web フォームが更新され、正しい RSASHA256(…)セクションの情報。そうでない場合は、HS256 に切り替えてから RS256 に戻ります。
VERIFY SIGNATURE セクションに、右端のテキストボックスに以下のコンテンツを貼り付け ます。
-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoETnPmN55xBJjRzN/cs30OzJ9olkteLVNRjzdTxFOyRtS2ovDfzdhhO9XzUcTMbIsCOAZtSt8K+6yvBXypOSYvI75EUdypmkcK1KoptqY5KEBQ1KwhWuP7IWQ0fshUwD6jI1QWDfGxfM/h34FvEn/0tJ71xN2P8TI2YanwuDZgosdobx/PAvlGREBGuk4BgmexTOkAdnFxIUQcCkiEZ2C41uCrxiS4CEe5OX91aK9HKZV4ZJX6vnqMHmdDnsMdO+UFtxOBYZio+a1jP4W3d7J5fGeiOaXjQCOpivKnP2yU2DPdWmDMyVb67l8DRA+jh0OJFKZ5H2fNgE3II59vdsRwIDAQAB -----END PUBLIC KEY-----
-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoETnPmN55xBJjRzN/cs30OzJ9olkteLVNRjzdTxFOyRtS2ovDfzdhhO9XzUcTMbIsCOAZtSt8K+6yvBXypOSYvI75EUdypmkcK1KoptqY5KEBQ1KwhWuP7IWQ0fshUwD6jI1QWDfGxfM/h34FvEn/0tJ71xN2P8TI2YanwuDZgosdobx/PAvlGREBGuk4BgmexTOkAdnFxIUQcCkiEZ2C41uCrxiS4CEe5OX91aK9HKZV4ZJX6vnqMHmdDnsMdO+UFtxOBYZio+a1jP4W3d7J5fGeiOaXjQCOpivKnP2yU2DPdWmDMyVb67l8DRA+jh0OJFKZ5H2fNgE3II59vdsRwIDAQAB -----END PUBLIC KEY-----
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記これは、Secured サンプルアプリケーションの Red Hat SSO サーバーデプロイメントからのマスターレルムの公開鍵です。
トークン
出力をクライアント出力から Encodedcoded ボックスに貼り 付け ます。Signature Verified sign が Debug ページに表示されます。