APIコネクターカードを使った認証

概要

サードパーティーサービスとの認証済みの基本接続、OAuth 2接続、またはカスタム接続を作成するには、APIコネクター関数カードを使用します。

背景

構築済みのコネクターを利用できないときは、APIコネクターカードを使用してサードパーティーサービスへのリクエストを作成し、応答をフローで解析します。資格情報はセキュアに保存され、ヘッダーは、提供されるいずれかの認証タイプを使って自動的に作成されます。

HTTPメソッド

APIコネクター関数では、いくつかのHTTPメソッドを使用して認証済みの接続を作成できます。

  • Raw Request
  • Close
  • Delete
  • Get
  • Post
  • Put
  • Patch

認証タイプ

認証をセットアップするには、次の操作を行います。

  1. Workflowsコンソールで、[Function(関数)][API Connector(APIコネクター)]を選択します。

  2. APIコネクターカードを選択します。

  3. [+ New Connection(+ 新規接続)]ボタンをクリックし、[New Connection(新規接続)]ダイアログを開きます。

  4. 接続のニックネームを入力します。APIコネクターカードは複数のコネクターで利用できるため、個々の接続を区別できるように詳細な名前を付けてください。この名前では、呼び出されるサービス、認証タイプ、使用アカウントへの参照を記述します。たとえば、JIRA Service Management - OAuth - service_accountのようになります。

  5. ドロップダウンリストから認証タイプを選択します。APIコネクターカードでは、設定なしでBasic(基本)OAuth(OAuth)Custom Header(カスタムヘッダー)の3タイプの認証がサポートされます。

  6. 認証タイプの選択に応じて、必要な値を入力します。

  7. [Create(作成)]をクリックします。

認証タイプのオプション

  • Basic(基本):HTTPプロトコルに組み込まれている、ユーザー名とパスワードの単純なスキーマ。Okta Workflowsは、Basicという単語、スペース、base64エンコードされた<username>:<password>という形式の文字列が含まれる認証ヘッダーを持つHTTPリクエストを送信します。

    • Username(ユーザー名):サードパーティアプリケーションのユーザー名。

    • Password(パスワード):サードパーティアプリケーションのパスワード。

  • OAuth(OAuth):OAuth 2.0は、資格情報を公開せずにサードパーティサイトのリソースに制限付きアクセスできるようにするプロトコルです。OAuthプロセスを開始する前に、新しいアプリをサービスに登録する必要があります。新しいアプリの登録時は、通常はアプリケーション名やWebサイトのURLなどの基本情報を登録します。

    さらに、認証をWorkflowsに戻すためのリダイレクトURIも登録しなければなりません。Okta Workflowsのプレビューorgと本番orgに接続するには、リダイレクトURIとしてそれぞれhttps://oauth.workflows.oktapreview.com/oauth/httpfunctions/cbhttps://oauth.workflows.okta.com/oauth/httpfunctions/cbを使用します。

    • Authorize Path(認可パス):サービスの認可パス。たとえば、https://example.com/oauth2/v1/authorizeなど。OAuth実装に他のクエリパラメーターが必要な場合は、ここで追加できます。パス内の?文字で開始し、パラメーターをkey=valueのペアとして追加します。ペアが複数ある場合は、各ペアを &文字で区切ります。

    • Access Token Path(アクセストークンパス):アクセスおよびリフレッシュトークンの承認コードをWorkflowsが交換するためのURI。

    • Scope(スコープ):Workflowsに提供されるアクセスのレベルを指定します。複数のスコープは多くの場合スペースまたはカンマで区切りますが、これはサービスによって異なります。リフレッシュトークン(refresh_tokenoffline_accessなど)を取得するために特別なスコープが必要かどうかを確認するには、APIのドキュメントを参照してください。

    • [Client ID(クライアントID)]:サービスにより公開されており、OAuthアプリケーションを識別して承認URLを構築するため使用される文字列。

    • [Client Secret(クライアントシークレット)]:サービスにより提供され、アプリケーションのIDをサービスに対して認証するため使用される、プライベートな値。

  • Custom(カスタム):このオプションを利用することで、カスタムヘッダー名と値を作成できます。

    • Header Name(ヘッダー名):サービスに渡されるカスタム名。たとえば、サービスによっては、ヘッダー名としてapi_key、値としてキー自体が求められる場合があります。

    • Header Value(ヘッダー値):ヘッダー名とともにサービスに渡される値。

  • None(なし):他のどのオプショも適用されない場合に接続を手動で作成するには、このオプションを使用します。未認証エンドポイントへのアクセスにも利用できます。

構築済みのコネクターとは異なり、APIコネクターカードでは接続のテストが自動的に実行されません。接続をテストするには、フローのTest this card(このカードをテスト)機能を使用します。