Azure Active Directory (Azure AD) トークンを取得し、それを使用して Service Bus キューにメッセージを送信する
Azure Active Directory (Azure AD) トークンの取得の概要については、「 アプリケーションからの認証 」を参照してください。
この記事では、Service Bus 名前空間にメッセージを送信するために使用できる Azure AD トークンを取得する例を示します。 テスト目的で Postman ツールを使用します。
前提条件
- 「クイック スタート: Azure portalを使用して Service Bus キューを作成し、Service Bus 名前空間と名前空間にキューを作成する」の手順に従います。
- Postman デスクトップ アプリをダウンロードしてインストールします。
アプリを Azure AD に登録する
最初の手順では、アプリケーションを Azure AD テナントに登録し、テナント ID、クライアント ID、およびクライアント シークレットの値をメモします。 Postman ツールを使用して REST API をテストする場合は、これらの値を最新の値で使用します。
Azure portal にサインインします。
検索バーで Azure Active Directory を検索し、ドロップダウン リストから選択します。
[ Azure Active Directory ] ページで、左側のメニューの [ アプリの登録 ] リンクを選択し、ツール バーの [ + 新しい登録 ] を選択します。
アプリの名前を入力し、[登録] を選択 します。
アプリケーションのホーム ページで、 アプリケーション (クライアント) ID と ディレクトリ (テナント) ID の値をメモします。 これらの値を使用して、Azure AD からトークンを取得します。
次に、左側のメニュー で [証明書 & シークレット ] を選択し、[ + 新しいクライアント シークレット] を選択します。
説明を入力し、シークレットの有効期限を選択して、[追加] を選択します。
[ クライアント シークレット ] リストのシークレット値の横にあるコピー ボタンを選択して、値をクリップボードにコピーします。 どこかに貼り付けます。 後で Azure AD からトークンを取得するために使用します。
Service Bus データ送信者ロールにアプリケーションを追加する
この例では、Service Bus キューにのみメッセージングを送信するため、アプリケーションを Service Bus データ送信者 ロールに追加します。
[Service Bus 名前空間] ページで、左側のメニューから [アクセス制御] を選択し、[ロールの割り当ての追加] タイルの [追加] を選択します。
[ロールの割り当ての追加] ページで、[ロール] Azure Service Bus [データ送信者] を選択し、サービス プリンシパルのアプリケーション (この例では ServiceBusRestClientApp) を選択します。
[ロールの割り当ての追加] ページで [保存] を選択して、ロールの割り当てを保存します。
Postman を使用して Azure AD トークンを取得する
Postman を起動します。
メソッドの場合は、[ GET] を選択します。
URI に「」と入力します
https://login.microsoftonline.com/<TENANT ID>/oauth2/token
。 を、先ほどコピーしたテナント ID の値に置き換えます<TENANT ID>
。[ ヘッダー ] タブで、 値に Content-Type キーと
application/x-www-form-urlencoded
を追加します。[ 本文 ] タブに切り替え、次のキーと値を追加します。
[ 送信] を選択して、トークンを取得する要求を送信します。 結果にトークンが表示されます。 トークンを保存します (二重引用符を除く)。 これは後で使用します。
メッセージをキューに送信する
Postman で、新しいタブを開きます。
メソッドの [POST] を選択します。
次の形式で URI を入力します。
https://<SERVICE BUS NAMESPACE NAME>.servicebus.windows.net/<QUEUE NAME>/messages
を Service Bus 名前空間の名前に置き換えます<SERVICE BUS NAMESPACE NAME>
。<QUEUE NAME>
をキューの名前に置き換えます。[ヘッダー] タブ で 、次の 2 つのヘッダーを追加します。
[ 本文 ] タブで、データ型として raw を選択し、本文に「」または「メッセージ」と入力
This is a message
します。[ 送信] を選択して、メッセージをキューに送信します。 次の図に示すように、コード 201 のように状態
Created
が表示されます。Azure portalの名前空間ページで、メッセージがキューにポストされていることを確認できます。
次の図に示すように、Service Bus キュー ページの Service Bus エクスプローラー (プレビュー) を使用して、メッセージを受信またはピークすることもできます。
参照
次の記事をご覧ください。