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

概要

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

背景

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

HTTPメソッド

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

  • Raw Request

  • Close

  • Delete

  • Get

  • Post

  • Put

認証タイプ

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

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

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

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

  4. 接続のニックネームを入力します。APIコネクターカードは複数の接続で使用できるため、それぞれの接続を区別できる詳細な名前を入力し、呼び出し先のサービス、認証タイプ、使用されるアカウントへの参照を含めるのがベストプラクティスです。たとえば、「JIRA Service Desk - OAuth - serviceaccount」のように入力します。

  5. ドロップダウンから[Auth Type(認証タイプ)]を選択します。APIコネクターカードでは、基本、OAuth、カスタムヘッダーの3タイプの認証が最初からサポートされています。

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

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

各タイプのフィールドを以下に示します。

  • 基本:HTTPプロトコルに組み込まれている、単純なユーザー名とパスワードのスキーマです。WorkflowsがHTTPリクエストを送信するとき、AuthorizationヘッダーにはBasicという単語に続いて、スペースの後に「username:password」をbase64エンコードした文字列が含まれます。

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

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

  • OAuth:OAuth 2.0は、Workflowsに資格情報を公開しなくても、サードパーティーのサイトのリソースに制限付きでアクセスできるプロトコルです。OAuthプロセスを開始する前に、新しいアプリをサービスに登録する必要があります。新しいアプリを登録するとき、通常はアプリケーション名、Webサイトなどの基本情報を登録します。さらに、認証をWorkflowsに戻すためのリダイレクトURIも登録する必要があります。Okta WorkflowsのPreviewとProdに接続するには、リダイレクトURIとしてそれぞれhttps://oauth.workflows.oktapreview.com/oauth/httpfunctions/cbとhttps://oauth.workflows.okta.com/oauth/httpfunctions/cbを使用します。

    • Authorize Path:サービスの承認パス。たとえば、https://example.com/oauth2/v1/authorizeです。

    • Access Token Path:Workflowsがアクセスおよび更新トークンの承認コードを交換するためのURI。

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

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

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

  • カスタム:カスタムヘッダーを選択すると、カスタムのヘッダー名と値を作成できます。

    • Header Name:サービスに渡されるカスタムの名前。たとえば、サービスではヘッダー名として「api_key」を、キー自体を値として要求することがあります。

    • Header Value:Header Nameとともにサービスに渡される値。

  • なし:他のオプションがいずれも適用されないとき、接続を手動で作成するには、このオプションを使用します。認証されていないエンドポイントにアクセスするためにも使用されます。

注

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