OAuth 2.0による認証の構築

OAuth 2.0は、Workflowsに資格情報を公開しなくても、サードパーティーサイトのリソースに制限付きでアクセスできるプロトコルです。OAuthプロセスを開始する前に、新しいアプリケーションをサービスに登録する必要があります。開発環境向けのリダイレクトURLは、認証フォームの[Credentials(資格情報)]セクションに表示されます。

OAuth 2.0認証を追加するには:

  1. [Overview(概要)]タブをクリックします。

  2. [Set up authentication(認証設定)]をクリックします。

  3. [Authentication(認証)]ダイアログの[Auth Type(認証タイプ)]ドロップダウンから[OAuth 2.0]を選択します。

  4. 次のフィールドに値を追加します。

フィールド 定義
Paths(パス)
Base URL(ベースURL)

サービスの認証エンドポイントのルートURL(例:https://account.box.com/api/oauth2)。

このオプションフィールドは、追加するその他の任意のパスのベースエンドポイントとして機能します。

Authorize Path(承認パス) サービスの承認パス。このフィールドにはパスを指定します(例:/authorize)。ベースURLが指定されない場合は、完全URLを指定します(例:https://account.box.com/api/oauth2/authorize)。
Token Path(トークンパス) フローがアクセスおよびリフレッシュトークンの承認コードを交換するためのURI。このフィールドにはパスを指定します(例:/token)。ベースURLが指定されない場合は、完全URLを指定します(例:https://account.box.com/api/oauth2/token)。
Refresh Token Path(リフレッシュトークンパス)(オプション) リフレッシュトークンパスは、多くの場合はアクセストークンパスと同じです。ただし、サービスがアクセストークンの更新に別のエンドポイントを使用する場合は、ここに入力できます。例:/token
Credentials(資格情報)
Redirect URLs(リダイレクトURL) 新しいアプリの登録時は、通常はアプリケーション名やWebサイトなどの基本情報を登録します。さらに、認証をOkta Workflowsに戻すためのリダイレクトURLも登録する必要があります。Oktaプレビューおよび本番サイトとの接続には、それぞれ次のリダイレクトURLを使用します。

https://oauth.workflows.oktapreview.com/oauth/{{auth.connector_key}}/cb and https://oauth.workflows.okta.com/oauth/{{auth.connector_key}}/cb

コネクターキーは、[設定]ページで確認できます。

Client Ownership(クライアント所有権)

OAuthアプリケーションを管理するユーザーのタイプを決定します。Developer(開発者)Customer(カスタマー)のオプションがあります。

Developer(開発者):コネクタービルダーがアプリケーションを作成し、その設定を管理します。コネクタービルダーは、[Client ID(クライアントID)]フィールドと[Client Secret(クライアントシークレット)]フィールドの値も提供します。

Customer(カスタマー):アプリケーションのエンドユーザーがアプリケーションを管理し、[Client ID(クライアントID)]フィールドと[Client Secret(クライアントシークレット)]フィールドの値を指定します。このオプションを選択すると、[New Connection(新規接続)]ダイアログに[Client ID(クライアントID)]フィールドと[Client Secret(クライアントシークレット)]フィールドが自動的に追加されます。

Client ID(クライアントID) サービスにより公開されており、OAuthアプリケーションを識別して承認URLを構築するため使用される文字列。
Client Secret(クライアントシークレット) サービスにより提供され、アプリケーションのIDをサービスに対して認証するため使用される、プライベートな値。
Scopes(スコープ)(オプション)1
Scopes(スコープ) Workflowsに提供されるアクセスの詳細レベルを指定します。リフレッシュトークンを取得するために特別なスコープ(refresh_tokenoffline_accessなど)が必要かどうかを確認するには、APIのドキュメントを参照してください。CAPIAカードがAPI上のすべてのエンドポイントにヒットするには、通常は、アプリですべてのスコープが有効になっている必要があります。
Scopes Delimiter(スコープ区切り文字) 区切り文字は、スコープの区切り方を指定します。多くの場合、複数のスコープはスペースまたはカンマで区切られますが、これはサービスによって異なります。space(スペース)comma(カンマ)のオプションがあります。
Parameters(パラメーター)(オプション) パラメーターを使用することで、インスタンスやサブドメインなど、認証に必要な追加情報をコネクターユーザーから収集できます。これらのフィールドは、ユーザーが最初に接続を作成する際に表示され、必須となります。

Label(ラベル):コネクターの構成時に[New Connection(新規接続)]ダイアログに表示される表示名。

Key(キー):サービスが使用する鍵/値ペアのテキスト値。たとえば、api_keyapplication_keyauthentication

Type(タイプ):フィールドには3つのタイプがあります。

  • Text(テキスト):ユーザーにはプレーンテキストフィールドが表示されます。これは、加工なしのオープンテキストフィールドです。

  • Password(パスワード):加工されたテキストフィールド。ユーザーには、このフィールドの入力内容は表示されません。

  • Dropdown List(ドロップダウンリスト):ユーザーが選択する、手動で作成した値のドロップダウン。

Config Values(構成値)(オプション)

コネクターに対してユーザーを認証する方法を定義するために、その他の設定値が必要になる場合があります。このセクションには、その値を追加できます。

Label(ラベル):コネクターの構成時に[New Connection(新規接続)]ダイアログに表示される構成値の表示名。

Definition(定義):このフィールドに静的な値が入力されるか、ヘルパーフローからの値が入力されるかを示します。

  • 静的な値であれば、[Value(値)]フィールドに値を入力します。

  • ヘルパーフローからの値であれば、[Choose Flow(フローの選択)]ダイアログでフローを選択します。

Type(タイプ):フィールドには2つのタイプがあります。

  • Text(テキスト):ユーザーにはプレーンテキストフィールドが表示されます。これは、加工なしのオープンテキストフィールドです。

  • Password(パスワード):加工されたテキストフィールド。ユーザーには、このフィールドの入力内容は表示されません。

[Visible(表示)]トグルは、コネクターの認証ダイアログに構成値を表示するかどうかを決定します。

次の手順

コネクターカードへのオプションフィールドの追加