OAuth v2は新規のWeb、モバイル、デスクトップアプリケーションから簡単に標準的な方法で安全認証を可能にするオープンプロトコルです。oAuth v2の使用で認証メカニズムの設定を設定するためには、そのアプリケーションのログイン認証クレデンシャルが必要になるため、まずはウェブアプリケーションにアカウントをログインする必要があります。
oAuth v2の仕組み
- Kore.ai アプリケーションはユーザーをウェブアプリケーションのロクインダイアログへ導き直します。
- ユーザーは認証します。
- ウェブアプリケーションはアクセストークンでユーザーをKore.ai アプリケーションへ導き直します。
- Kore.ai アプリケーションはアクセストークンを検証します。
- アクセストークンはKore.aiアプリケーションをユーザーの身分として、提供元の保護済のリソースへアクセスことを可能にします。
oAuth v2の定義
ボットに認証を定義するには、以下の手順に従います。
- 認証プロファイルを設定するボットを開きます。
- 左側のナビゲーションパネルにカーソルを合わせ、設定 > 設定するから認証プロファイルを選択します。
- 追加をクリックします。新しい認証メカニズムダイアログが開きます。
- 認証タイプドロップダウンリストでauth v2を選択します。
- 名前フィールドに認証の名前を入力します。
以下の図は、ボットの基本認証を有効にするために定義する必要がある、oAuth v2フィールドの例です。
oAuth v2の調整は、下記のテーブルの説明の通りにフィルドを定義してください。
フィールド名 | 説明 |
---|---|
認証タイプ | OAuth v1 に設定します。 |
ボットのコールバックリンク | エンドユーザーの認証が完了した後、エンドユーザーを導き直しするためにウェブアプリケーションまたはウェブサービスが使用するURLです。oAuth v2の設定を定義すると、Kore.ai アプリケーションがhttps://idp.kore.ai/workflows/callback/をリードオンリー値として提供します。 |
身分の提供元の名前 | ウェブアプリケーションやウェブサービスの名前、例えば、アサナ。このフィールドは必須です。 |
クライアント ID | Kore.ai クライアントの IDです。 |
クライアントシックレットキー | Kore.aiアプリケーションがクライアント IDに基づきウェブアプリケーションへの認証として提供される値。 |
認証 URL | This is the URL used to obtain end-user authorization for the Kore.ai application to access the web application or web service using the access token.このフィールドは必須です。ダイナミックフィールド、パスパラメータフィールド、クエリフィールドなどを使用して、認証URLを定義することができます。(例:https://kore.someCompany.com/sap/opu/odata/sap/{{authfield1}}/?$format=json またはhttps://{tenant}.service-now.com/api/now/v1/table/incident)詳細については、タスクのセッション変数とコンテキスト変数を使用を参照してください。 |
コネクタを使用してアクセス | はいを選択してKore.ai ConnectorエージェントでKore.ai ボットにアクセスできるようにします。このオプションは、Kore.ai コネクタ エージェントが企業の社内ネットワークで構成、有効化されている場合に表示されます。詳細については、Kore.ai Connectorの使用をご覧ください。 |
トークンリクエストURL | Kore.ai アプリケーションが未認証のリクエストトークンを取得するために使用するURLです。リクエストトークンとはKore.aiアプリケーションがアクセストークンを取得ためのエンドユーザーからの認証を取得ための値。エンドユーザーの認証の後、Kore.aiアプリケーションからアクセストークンを要求することができます。このフィールドは必須です。 |
スコープ | ボットのウェブサービスが認証のために追加の値を必要とする場合、1つ以上のキー/値の組み合わせを追加します。例えば、一部のボットのウェブサービスは、読み取り専用、書き込み、またはその両方を値とするスコープキーの使用をサポートしています。 |
フィールドの追加
追加をクリックして追加のフィールドダイアログを開き、追加の認証入力フィールドを表す1つ以上のキー/値の組み合わせを入力します。デフォルトのユーザー名とパスワードのフィールドが承認入力のニーズを満たしていない場合は、 追加フィールド を追加することで、エンドユーザーに表示されるキーと値のペアとしてカスタムフィールドを追加できます。これらのフィールドは、たとえば、ユーザー名フィールドとパスワードフィールドに加えて、認証プロセスでPINコードが必要な場合に使用することができます。下図のように、追加のフィールドが追加されます。 以下のフィルドを指定 してください:
- フィールド キー – 認証に指定するカスタム フィールド名です。
- 値 – カスタム フィールドの認証に指定する値です。
追加をクリックして追加のフィールドを保存します。追加のフィールドを追加する場合、認証フィールドセクションの追加をクリックしてください。
認証フィールドの追加
デフォルトでは、ボットリクエストメッセージのヘッダーの一部として、認証フィールドは設定されていません。ボットリクエストに認証フィールドが必要、または想定される認証がヘッダーの一部ではない場合(例:ソーシャルセキュリティ番号やPINなど)、認証フィールドの追加をクリックして下図の通りにフィールドを定義します。
- フィールドタイプフィルドに、以下のうちの一つを選択することができます: 必須のボットリクエストメッセージの位置および認証フィルドのタイプの次第です。
- ヘッダー – ボットは認証フィールドをリクエストのヘッダーの一部として求めます。
- ペイロード – ボットは認証フィールドをリクエスト本体のコンテンツの一部として求めます。
- クエリー文字列―ボットは認証フィールドをリクエストのボディにあるクエリー として予想します。
- パースパラメータ(PathParam)―認証フィールドをURLパースリクエストの一部として予想されるボット。
- フィールドキーフィールドに、選択済のフィールドタイプフィールド名を入力してください。
- フィールド値フィールドに、フィールドキーの指定された値を入力してください。
- 追加をクリックします。新規の認証フィールドは認証フィールドのセクションに追加されました。
認証フィールドを追加する場合、認証フィールドセクションの追加をクリックしてください。
認証テスト
認証を保存した後、タスクの残りのステップの開発を続ける前に、認証ページでテストをクリックして、認証定義をテストすることができます。テストをクリックすると、認証トークンのURLとクライアントIDおよびクライアントシックレットキーを使用してテストが実行されます。テンナンシーが定義済みの場合、テスト認証ダイアログが表示されます。テストをクリックすると認証テストを開始します。認証の検証が完了すると、次の図のようにテスト認証のダイアログが閉じられ、成功または失敗の検証結果がテスト認証ボタンの右横に表示されます。認証失敗の場合、下記の図の通りに、認証テスト失敗のメッセージはヘッダーおよび応答のタブとともに表示します。