PostgreManを接続するには、APIのアクセストークンの



Pexelsの上のKhwanchai Phantongによる写真.コム
私の最近のプロジェクトの時間の大半は、私が使用するAmazon Cognito ユーザー認証(サインイン、サインアップ、アイデンティティプロバイダなどでログイン)の前にAmazon API Gateway . 通常、APIエンドポイント制御アクセスusing Amazon Cognito user pools as authorizer
APIのテストでこれらのタイプのAPIでPostman 良い練習です.Postmanの使用は、本格的なクライアントの実装なしにテストの異なるタイプを実行する開発者としてあなたを支援しながら簡単にAPI契約を配布することができます.
これらのAPIを接続して消費すると予想される方法はid token ヘッダーのアマゾン認知許可から.このトークンは、Accept - Authorizersを活用してAmazon APIゲートウェイによって自動検証されます.これらのエンドポイントへの典型的なリクエストは以下のようになります.
curl --location --request GET 'https://{API-ID}.execute-api.eu-west-2.amazonaws.com/v1/profiles/123' \
--header 'Authorization: eyJraWQiOiJOZjB0clFHanRG.....'
すべてのリクエストでこのトークンを追加するにはPostman supports Collection ベースの認証設定.( Postmanで全てのリクエストをコレクションの下に置くと仮定します).ご覧のように、Postmanの認定技術の様々なサポートしています.

これらの選択肢から使用するのは、AOUTH 2.0である.詳細な深いダイビングは別のグラントの種類で利用可能ですAWS Blog.
あなたのアマゾン認知セットの一部として、あなたはこのユーザープールにアクセスできるアプリケーションクライアントを作成することになっています.このアプリのクライアントを使用して、我々は既存のユーザーを使用してログインしてid token これはAPI呼び出しに使用されます.

[ステップ1 ] -アプリケーションクライアントIDとコールバックURL ( s )
これを設定するには、認知クライアントのアプリケーションクライアントの設定セクションに移動します.

あなたはApp Client Id and Callback URL(s) あなたのOAuth 2.0セットアップでこのページから.

[ステップ2 ] oauth
また、次のOAuth 2.0フローが同じアプリケーションクライアント設定ページで有効になっていることを確認します.

既存のユーザーアカウントでログインする方法はHosted UI アマゾン認知の特徴.このUIは、ユーザープール設定に準拠したサインアップ画面です.それは実際に箱からあなたの認知セットをテストする良い方法です
(うまく動作して動作していて、なめらかなUIではない🙂)

[ステップ3]ホストUIドメイン
あなたはスクリーンショットの上から実現することができますので、セットアップをする必要がありますホストしています.そのためには、アプリケーションの統合セクションと

ドメインドメインを追加するには、ホスト名のドメイン名を設定できます.このURLはPostmanでOAuth 2.0の設定に使用されます.また、このURLは、Amazonの認知によってホストされているページのサインアップとサインに使用されます.接頭辞は選択されたAWS領域の向こうでユニークでなければなりません.ドメイン名は小文字、数字、ハイフンだけを含めることができます.Learn more about domain prefixes.

[ステップ4 ]コレクション認証設定
次の部分は、サインアップ/サインアップするためにid token 認証されたAPI呼び出しをするために.次の詳細については、コレクションの認証設定を編集します.

  • グラントタイプ
  • 解雇するAuthorise using browser オプション

  • コールバックURL https://example.com

  • 認証されたUI URL

  • クライアントID :{ APPクライアントID }

  • 範囲:電話EメールOpenIDプロフィールAWS.認知signinユーザ.管理

  • クライアント認証:クライアントのクライアント資格情報を送信する

  • [ステップ5 ]アクセストークンを生成する
    これらの詳細を入力し、クリックして新しいアクセストークンボタンをクリックすると、PostmanはあなたがログインしたりサインアップするためにホストのUI URLを開きます.

    この設定については、テストユーザを作成して、上記のUIを使用してすべてのAPI呼び出しを使用できます.上記のUIは、User sign ups allowed? Users can sign themselves upご覧のように、このUIは、ユーザープールの設定に準拠し、あなたのセットアップをテストする良い方法を提供します.ここにサインアップ画面のスクリーンショットと場所でパスワードポリシーを見てください.

    ホストUIも、セットアップ中に電子メールおよび/または電話の検証を提供します.私のユーザープールセットアップでは、私はユーザーが検証された電子メールを持っている必要があります.したがって、この下のスクリーンショットでは、ホストされているUIが関連情報と入力を示しているのを見ることができます.Gentooが検証コードのために本当の電子メールを送るので、私は混乱を避けるためにここで本当のメールを使うことを提案します.

    成功したサインをサインアップするか、サインアップするとき、郵便配達人はこれを確認して、トークンをつかみます.

    画面の次のトークンの詳細が表示されます.あなたは、この画面にはAccess Tokenid_token .

    For API Gateway Cognito Authorizer workflow, you will need to use id_token.

    !!! IMPORTANT DETAIL !!!



    単にid_token そして現在のトークン設定のアクセストークン値に入れます.これはid_token そのコレクション内のすべてのリクエストに使用できます.


    [ステップ6 ]セットアップコレクションの認証設定
    最後の手順では、コレクションの認証設定を使用するAPI要求を更新します.リクエストの認証設定をInherit auth from parent Postmanは、Authorization ヘッダー値.


    結論
    私はあなたが簡単にPostman経由でこのセットアップを使用してCOLMITOの背後にあるAPIをテストすることができることを願っています.コレクションをエクスポートできます.json そして、あなたがコードベースとしてAPI契約テストを受け入れているように、あなたのコードベースの一部を作ってください