Azure portalを使用して Azure Bot リソースを作成する
適用対象: SDK v4
Azure Bot リソース (ボット リソース) を使用すると、ボットを Azure Bot Services に登録し、ボットをチャネルに接続できます。 ボットを構築、接続、管理して、アプリや Web サイトから Teams、Messenger、その他多くのチャネルまで、どこにいてもユーザーと対話できます。
この記事では、Azure portalを使用してボット リソースを作成する方法について説明します。
- ボットを作成する方法については、「 Bot Framework SDK を使用してボットを作成する 」クイック スタートを参照してください。
- ボットをプロビジョニングして Azure に発行する方法については、Azure にボットをデプロイする方法を参照してください。
リソースの管理
ボット リソースを作成すると、Azure によって関連するリソースが作成されます。 作成されるリソースの一部は、ボットの ID の管理方法によって異なります。
ボット ID は、いくつかの異なる方法で Azure で管理できます。
- ボットの資格情報を自分で管理する必要がないように、 ユーザー割り当てマネージド ID として。
- シングルテナント アプリとして。
- マルチテナント アプリとして。
ユーザー割り当てマネージド ID とシングルテナント アプリの種類のサポートが、バージョン 4.15.0 の Bot Framework SDK for C# と JavaScript に追加されました。 これらのアプリの種類は、他の言語やBot Framework Composer、Bot Framework Emulator、または ngrok ではサポートされていません。
| アプリの種類 | サポート |
|---|---|
| ユーザー割り当てマネージド ID | Azure Bot Serviceと C# および JavaScript SDK |
| シングルテナント | Azure Bot Serviceと C# および JavaScript SDK |
| マルチテナント | Azure Bot Service、すべての Bot Framework SDK 言語、Composer、Emulator、および ngrok |
前提条件
- Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。
- ユーザー割り当てマネージド ID とシングルテナント ボット用の Bot Framework SDK for C# または JavaScript バージョン 4.15.0 以降。
リソースを作成する
Azure Bot リソースを作成します。これにより、ボットを Azure Bot Serviceに登録できます。
ヒント
新しい Web アプリ ボット と ボット チャネルの登録 リソースを作成することはできません。ただし、構成およびデプロイされた既存のリソースは引き続き機能します。 SDK バージョン 4.14.1.2 以降の VSIX または Yeoman テンプレートから作成されたボットには、Azure Bot リソースを生成する ARM テンプレートが含まれています。
Azure ポータルにアクセスします。
右側のウィンドウで、[ リソースの作成] を選択します。
検索ボックスに「Enter」と入力
botし、 Enter キーを押します。Azure Bot カードを選択します。
[作成] を選択します
必須フィールドに値を入力し、設定の確認と更新を行います。
[プロジェクトの詳細] に情報を入力します。 ボットにグローバル データとローカル データの所在地のどちらを使用するかを選択します。 現在、ローカル データ所在地機能は、"westeurope" リージョンのリソースでのみ使用できます。 詳細については、「Azure Bot Service での地域化」を参照してください。
Microsoft アプリ ID に情報を入力します。 Azure でボット ID を管理する方法と、新しい ID を作成するか、既存の ID を使用するかを選択します。
[Review + create](レビュー + 作成) を選択します。
検証に合格した場合は、[ 作成] を選択します。
デプロイが完了したら、[ リソースに移動] を選択します。 選択したリソース グループにボットと関連リソースが一覧表示されます。
Bot Framework SDK がまだない場合は、 GitHub からダウンロード を選択して、目的の言語のパッケージを使用する方法を確認します。
これで、Bot Framework SDK を使用してボットを構築する準備ができました。
ヒント
Azure では、新しいアプリ ID を使用して新しいシングルテナントまたはマルチテナントの Azure Bot リソースを作成すると、 パスワードも生成されます。
ボット ID 情報
ボットの構成ファイルに ID 情報を追加するには、次の手順に従います。 このファイルは、ボットの作成に使用するプログラミング言語によって異なります。
重要
Bot Framework SDK の Java バージョンと Python バージョンでは、マルチテナント ボットのみがサポートされます。 C# と JavaScript のバージョンでは、ボットの ID を管理するための 3 つのアプリケーションの種類がすべてサポートされています。
| 言語 | ファイル名 | Notes |
|---|---|---|
| C# | appsettings.json | ボットの ID を管理するための 3 つのアプリケーションの種類をすべてサポートします。 |
| JavaScript | .env | ボットの ID を管理するための 3 つのアプリケーションの種類をすべてサポートします。 |
| Java | application.properties | マルチテナント ボットのみをサポートします。 |
| Python | config.py | マルチテナント ボットのみをサポートします。 ID プロパティをメソッド呼び出しの os.environ.get 引数として指定します。 |
追加する必要がある ID 情報は、ボットのアプリケーションの種類によって異なります。 構成ファイルに次の値を指定します。
C# ボットと JavaScript ボットでのみ使用できます。
| プロパティ | 値 |
|---|---|
MicrosoftAppType |
UserAssignedMSI |
MicrosoftAppId |
ユーザー割り当てマネージド ID のクライアント ID。 |
MicrosoftAppPassword |
適用不可。 ユーザー割り当てマネージド ID ボットの場合は、この値を空白のままにします。 |
MicrosoftAppTenantId |
ユーザー割り当てマネージド ID のテナント ID。 |
ボットの既存のApp Service リソース (Web アプリ) があり、ボットがユーザー割り当てマネージド ID アプリケーションである場合は、ボットのアプリ サービスを更新する必要がある場合があります。
- ボットの Web アプリのApp Service ブレードに移動します。
- [設定] にある [ID] を選択します。
- [ ID ] ブレードで、[ ユーザー割り当て ] タブと [追加 (+)] を選択します。
- [ ユーザー割り当てマネージド ID の追加] ブレードで、次の操作を行います。
サブスクリプションを選択します。
[ユーザー割り当てマネージド ID] で、ボットのマネージド ID を選択します。 マネージド ID が自動的に生成された場合は、ボットと同じ名前になります。
[ 追加] を選択して、ボットにこの ID を使用します。
ボットのアプリまたはテナント ID を取得するには:
- ボットの Azure Bot リソース ブレードに移動します。
- ボットの [構成] ブレードに移動します。 このブレードから、ボットの Microsoft アプリ ID または アプリ テナント ID をコピーできます。
シングルテナント ボットとマルチテナント ボットには、一部の操作に必要なアプリ シークレットまたはパスワードがあります。 Azure Bot Serviceでは、ボット シークレットが非表示になります。 ただし、ボットのApp Service リソースの所有者は、新しいパスワードを生成できます。
- ボットの Azure Bot リソース ブレードに移動します。
- ボットの [構成] ブレードに移動します。
- Microsoft アプリ ID の横にある [管理] を選択して、アプリ サービスの [証明書とシークレット] ブレードに移動します。
- ブレードの指示に従って新しいクライアント シークレットを作成し、安全な場所に値を記録します。
関連情報
- Azure Active Directory での ID 管理の詳細については、「 Azure Active Directory とは」を参照してください。
- Azure App ServiceプランとApp Serviceプランの詳細については、App Serviceの概要を参照してください。
- Azure リソースとその一般的な管理方法については、Azure Resource Managerの概要を参照してください。
注意
現在、Bot Framework ComposerとBot Framework Emulatorはマルチテナント ボットのみをサポートしています。 Bot Framework SDK for C# または JavaScript バージョン 4.15.0 以降は、ユーザー割り当てマネージド ID とシングルテナント ボットに必要です。
スキルのサポート
一部の種類のスキル コンシューマーは、一部の種類のスキル ボットを使用できません。 次の表では、サポートされる組み合わせについて説明します。
| マルチテナント スキル | シングルテナント スキル | ユーザー割り当てマネージド ID スキル | |
|---|---|---|---|
| マルチテナント コンシューマー | サポートされています | サポートされていません | サポートされていません |
| シングルテナント コンシューマー | サポートされていません | 両方のアプリが同じテナントに属している場合にサポートされます | 両方のアプリが同じテナントに属している場合にサポートされます |
| ユーザー割り当てマネージド ID コンシューマー | サポートされていません | 両方のアプリが同じテナントに属している場合にサポートされます | 両方のアプリが同じテナントに属している場合にサポートされます |
スキルまたはスキル コンシューマーを構成する方法については、「スキルの実装」または 「スキルコンシューマーの実装」を参照してください。