Java Keystore (JKS) ファイルを生成して ServiceNow インスタンスでセキュリティを設定する
Google Dialogflow を 仮想エージェント の NLU プロバイダーとして使用するには、ダウンロードした秘密キーを使用して JKS ファイルを生成し、ServiceNow インスタンスで認証を設定します。
始める前に
Java Development Kit (JDK) がシステムにインストールされていることを確認します。
必要なロール:admin
このタスクについて
注:
Google Dialogflow は認証に OAuth2.0 を使用します。
手順
- コマンドシェルウィンドウを開きます。
-
P12 ファイルから JKS ファイルを作成するには、次の手順を実行します。
-
次のコマンドを実行します。
keytool -importkeystore -srckeystore /local_dir/myprivatekey.p12 -srcstoretype pkcs12 -destkeystore /local_dir/myprivatekey.jks -deststoretype JKSこの例では、
/local_dir/myprivatekey.p12は前のステップでダウンロードした秘密キーを指します。 -
プロンプトが表示されたら、宛先キーストアのパスワードとソースキーストアのパスワードに「notasecret」と入力します。
notasecret は、前のステップでメモした秘密キーのパスワードです。このパスワードを 3 回入力します。
同じディレクトリーに JKS ファイルが作成されます。 -
次のコマンドを実行します。
-
ServiceNow インスタンスで、JKS ファイルを Google Dialogflow X.509 証明書レコードに追加します。
- [すべて] に移動し、フィルターに「sys_certificate.list」と入力します。
- [Google Dialogflow X.509 証明書] を選択してレコードを開きます。
-
フォームで、以下のとおりにフィールドに入力します。
フィールド 値 タイプ [Java キーストア] を選択します。 キーストアパスワード JKS ファイル (notasecret) の作成時に指定した秘密キーのパスワードを入力します。 アクティブ このオプションを選択して証明書をアクティブ化します。 - [添付ファイル] アイコンを選択し、JKS ファイルをレコードにアップロードします。
-
[関連リンク] で、[ストア/証明書を検証] を選択します。
「Valid key_store」というメッセージが表示されます。
- [更新] を選択します。
-
ServiceNow インスタンスで、Google Dialogflow JWT (JSON Web トークン) キーストアエイリアスレコードを更新します。
- [すべて] に移動し、フィルターに「jwt_keystore_aliases」と入力します。
- [Google Dialogflow JWT キーストア] を選択してレコードを開きます。
-
フォームで、以下のとおりにフィールドに入力します。
フィールド 値 署名キーストア [Google DialogFlow X.509 証明書] を選択します。 署名アルゴリズム [RSA 256] を選択します。 署名キー JKS ファイル (notasecret) の作成時に指定した秘密キーのパスワードを入力します。 キー ID このフィールドは空のままにします。 - [更新] を選択します。
-
ServiceNow インスタンスで、Google Dialogflow JWT プロバイダーレコードを更新します。
- [すべて] に移動して、フィルターに「jwt_provider.list」と入力します。
- [Google Dialogflow JWT プロバイダー] を選択してレコードを開きます。
- [署名構成] フィールドで、[Google DialogFlow JWT キーストア] を選択します。
-
[標準要求] 関連リストで、Google Dialogflow エージェントサービスアカウントのメールアドレスを iss エントリの要求値として入力します。
詳細については、「Google Dialogflow ES でサーバーアカウントと秘密キーを作成する」を参照してください。
- [更新] を選択します。
-
ServiceNow インスタンスで、次の手順に従って、Google Dialogflow NLU OAuth プロバイダーレコードを更新します。
- [すべて] に移動し、フィルターで「oauth_entity.list」と入力します。
- Google Dialogflow NLU を選択してレコードを開きます。
-
フォームで、以下のとおりにフィールドに入力します。
フィールド 値 クライアント ID 前のステップで保存した Google Dialogflow エージェントサービスアカウントの一意の ID を入力します。 クライアントシークレット JKS ファイル (notasecret) の作成時に指定した秘密キーのパスワードを入力します。 デフォルトの権限許可タイプ [JWT ベアラー] を選択します。 - [更新] を選択します。
-
ServiceNow インスタンスで、GoogleDialogFlowESNLUPrediction システムエイリアスを更新します。
- [すべて] に移動し、フィルターに「sys_alias.list」と入力します。
- [GoogleDialogFlowESNLUPrediction] を選択してレコードを開きます。
- [接続属性] タブを選択して EnvID レコードを見つけます。
-
[デフォルト値] 列で、エージェントが公開された Google Dialogflow 環境の名前で値を更新します。
デフォルト値は prod です。
- [更新] を選択します。
-
仮想エージェント で Google Dialogflow ES を NLU プロバイダーとして指定します。
詳細については、「仮想エージェント での 自然言語理解 (NLU) の構成」を参照してください。