スキップしてメイン コンテンツに移動

Workspace ONE IntelligenceのカスタムコネクタでMS Teamsにメッセージを投稿


以前Intelligenceのカスタムコネクタを使用して、WS1 UEMに対してカスタムのアクションを実行するという内容をポストしました。(こちら

今回は、同じくカスタムコネクタを利用することで、IntelligeceからMicrosoft Teamsにメッセージを送信するということを試してみたいと思います。

大まかな流れは以下の通りです。
    1.MS Teams側の設定
    2.Postman Collectionの作成
    3.Intelligenceカスタムコネクタ設定と動作確認


1.MS Teams側の設定

まずは、Teams側でWebhookによるメッセージの送信ができるようにするための準備をします。
Teamsでチームの[…]をクリック後[チャネルを追加]をクリックします。


チャネル名に任意の値を設定し、[追加]をクリックします。


チャネルが作成されたら、チャネルの[…]をクリック後、[チャネルを管理]をクリックします。


[チャネルのモデレーション]を[オン]にし、[コネクターにチャネルメッセージの送信を許可する]にチェックが入っていることを確認します。


チャネルの[…]をクリック後、[コネクタ]をクリックします。
【補足】
モデレーションをオンにしたあと、[コネクタ]が選択肢に現れるまで少々時間が掛かるようなので、表示されない場合はしばらく待ちましょう。


[Incoming Webhook]の[追加]をクリックします。


[追加]をクリックします。


名前を適当に付け、[作成]をクリックます。


URL欄右横のコピーボタンをクリック後、[完了]をクリックします。
【補足】
このURLは後程使うので、テキストエディタか何かに控えておいてください。


ここまででTeams側の準備は完了です。
次はIntelligence側の設定の事前準備をします。



2.Postman Collectionの作成

Intelligenceでカスタムコネクタを設定する際、実行するアクションの内容を定義したJSONファイルが必要になります。
Postmanというツールを使用して、JSONファイルを作成します。


Intelligenceのカスタムコネクタ用のJSONファイルのサンプルがGithubで公開されているので、その中からMS Teamsのものを探し出し、[Microsoft Teams Sample.postman_collection.json]を入手しておきます。


Postmanを起動し、[Import]をクリックします。


先ほど入手した[Microsoft Teams Sample.postman_collection.json]をドラッグ&ドロップします。


JSONファイルの内容を基にCollectionが作成されます。
[Create Simple Message]をクリックします。


URL欄に先ほど控えたTeamsのWebHookのURLを入力します。


[Body]タブにメッセージを入力して、[Send]をクリックし、テストを実行します。


メッセージが表示されたか、Teams側でも確認しておきます。


レスポンスとしてエラーが返ってこなければ、[Save Response]をクリック後、[Save as example]をクリックします。


[Save Example]をクリックします。
【補足】
IntelligenceにJSONファイルをアップロードする際にExampleが無いとエラーになってしまうので、お作法として[テスト実行して動作確認]⇒[Exampleとして保存]をするようにしておきましょう。


最終的に[Save]をクリックして、Request自体も保存します。


同じことを[Create Card]のほうのRequestでも行い、2つともRequestの保存まで完了したらCollectionを右クリックして、[Export]をクリックします。


デフォルト(Collection v2.1)のまま[Export]をクリックします。


Intelligenceへのインポート時に必須の値を定義するためJSONファイルをテキストエディタで開き、以下赤枠箇所を追記して保存します。
1つのJSONファイル内に複数のアクションが設定されている場合、すべてのアクションに[id]を設定する必要があります。
今回のMS Teamsの場合はサンプルファイルにはデフォルトで2つのアクションが含まれているため、[id]という値を2か所に追記する必要があるということになります。


以上でIntelligence側の設定の準備は完了しました。
いよいよIntelligeceの設定を行います。


3.Intelligenceカスタムコネクタ設定と動作確認

Intelligenceの管理コンソールで[統合]>[ワークフローコネクタ]をクリック後、[追加]をクリックします。


[カスタムコネクタ]タブをクリック後、以下を入力して[設定]をクリックします。
 -名前:任意の値
 -Base URL:https://outlook.office.com
 -Auth Type:No Authentication


[アクション]タブをクリック後、[お使いのコンピュータから選択します。]のリンクをクリックします。


2つのアクションが追加されます。


動作確認のためアクション名の左の[]をクリック後[テスト]をクリックします。


Postmanでの実行時に入力した文字列がプリセットされているので、Intelligenceからの実行だとわかるようなメッセージに変更して、[テスト]をクリックしてみます。


「200 OK」が表示されればテストは成功しています。


Teamsの方も見てみると、テスト実行画面で設定した通りの文言でメッセージが追加されているため、IntelligenceのカスタムコネクタからTeamsに対してメッセージを送信することができたことがわかります。



ここまでできれば、Intelligenceのアクションとして「MS Teamsへのメッセージ送信」が利用できるようになっているため、あとは何らかのトリガーによって本カスタムアクションを実行するようにすれば、「WS1 UEMから取得したデバイス情報を基にMS Teamsにメッセージを送信」ということが自動化できます。


MS Teamsをメインのコミュニケーションツールとして利用している組織であれば、デバイスの状態変更をトリガーにTeamsにメッセージを送信することで、運用業務自動化などにも活用できるかもしれません。



コメント

このブログの人気の投稿

Workspace ONE Accessに証明書認証でログイン

Workspace ONE AccessではSaaSなどのサービスへのアクセス管理ができますが、クライアント証明書認証の機能も備わっています。 ここでは、Workspace ONE UEMから配信した証明書を使用して、Workspace ONE Accessに証明書認証でログインする、ということをやってみます。 まずは、Workspace ONE UEMコンソールでの作業です。 すべての設定>システム>エンタープライズ統合>Workspace ONE Access>構成 へ移動し、「 エクスポート 」をクリックしてAirWatch認証局のルート証明書をエクスポートします。 次に、Windows向けにWorkspace ONE Access認証用証明書プロファイルを作成してデバイスに対して配信します。 SCEPペイロードを選択し、「 資格情報ソース 」は「 AirWatch認証局 」を選択します。証明書テンプレートは「 証明書(クラウド展開) 」です。 【補足】 上記のプロファイルで配信した証明書は 秘密キーのエクスポートができない ようになっているため、使い回しを防ぐことができます。つまり、私用のデバイスにインポートし直してログインしてしまおう...ということはできない仕組みになっているワケですね。 次はWorkspace ONE Accessの管理コンソールでの作業です。 IDとアクセス管理>管理>認証方法をクリックし、「 証明書(クラウドデプロイ) 」の設定を変更します。(UEMのプロファイルで選択した証明書テンプレートと同じ名前ですね。若干の誤差はありますが...) 始めに、「 証明書アダプタを有効にする 」にチェックを入れ、「 ルートおよび中間CA証明書 」のところには先ほどWorkspace ONE UEMからエクスポートした証明書をアップロードし、「 証明書の失効を有効にする 」にもチェックを入れておきます。 【補足】 公的認証局であっても、ここでルート証明書をアップロードしない限り証明書認証はできないので、今回の例では Workspace ONE UEM内部の認証局から発行されている証明書以外では認証できない 構成にすることができます。 少し下にスクロールして「 OCSPの失効を有効にする 」にチェックを入れ、「 OCSPレスポンダの署名証明書 」には...

Workspace ONE AccessでOpenID Connect連携

Workspace ONE Accessはその名の通りSaaSなどへのアクセス管理をすることができる製品ですが、Identity Providerの役割を果たすことも可能で、以下のフェデレーションプロトコルに対応しています。  -WS-Federation  -SAML  -OpenID Connect WS-FederationはOffice365と連携する際などに利用したりするヤツですね。 個人的な感覚では、クラウドサービスはSAML認証に対応しているものが多いのでWorkspace ONE Accessと認証連携する場合、SAMLを利用するケースが一番多い気がします。 また、設定ガイド( SAML ベース SSO 統合のドキュメント センター )なんかも公開されており、連携のハードルは比較的低いと思います。 一方で、OpenID Connectの利用に関してはかなり情報が少ない気がしてます... ただ、OpenID Connectも認証連携の仕組みとしては代表的なものの一つではありますので、今回はOpenID Connectを使用してWorkspace ONE Accessと認証連携をしてみたいと思います。(連携先のサービスにはRedmineを使用します。) まずはWorkspace ONE Accessの管理コンソールでの作業です。 カタログ>Webアプリケーション とクリックして、Workspace ONE Accessのアプリカタログに載せるWebアプリの一覧を開き、「 新規 」をクリックします。 「 名前 」に入力した値はそのままユーザーのアプリカタログに表示されるので、わかりやすい名称にします。入力したら次に進みます。 【補足】 いくつかのサービスは連携用のテンプレートがあり、「 またはカタログから参照 」をクリックすることで利用が可能です。今回使用するRedmineについても、SAML連携であればテンプレートがあるので比較的カンタンに設定できると思います。 まずは、「認証タイプ」で「 OpenID 接続 」を選びます。(おそらくOpenID Connectが訳されているのでしょうが、何か違うような...) すると、OpenID Connect連携用の設定項目が現れるので、各設定を入れていきます。 「 クライアントID 」と「 クライアント シークレ...

Workspace ONE AccessからServiceNowにシングルサインオン(SAML)

以前、Workspace ONEと他システム間で、 OpenID Connect で連携する内容をポストしましたが、今回は SAML を利用したシングルサインオンの構成を検証してみました。 ServiceNow と SAML連携 して、WS1のポータルからシングルサインオンする構成を試してみます。 大枠の流れとしては以下の通りです。      1.ServiceNow(SP)のSAML認証設定          1.1. WS1 AccessからSAML連携に必要な情報を取得           1.2.SAML認証設定      2.WS1 Access(IDP)でSAML認証設定      3.動作確認 1.ServiceNow側(SP)でSAML認証設定 まずは、今回の構成ではSP(Service Provider)となるServiceNow側でSAMLによるシングルサインオンを可能とするように構成します。 1.1.WS1 Accessから S AML連携に必要な情報を取得 まずは、WS1 AccessのIDPメタデータのURLを取得します。 [カタログ]>[Webアプリケーション]をクリック後、[設定]をクリックします。 左ペインから[SAMLメタデータ]をクリック後、IDPメタデータの[URLをコピー]をクリックします。 クリップボードにコピーされるので、テキストエディタにでも貼り付けておきます。 次に、WS1 AccessのIDP署名証明書を取得します。 左ペインから、[SAMLメタデータ]をクリック後、署名証明書の[ダウンロード]をクリックします。 こんなファイルがダウンロードされます。 1.2.SAML認証設定 続いて、ServiceNow側のSAML認証設定を行います。 ServiceNowの管理コンソールにログインし、検索バーに[saml]と入力後、[SAML2 Single Sign-On]配下の[Certificate]をクリックします。 後で、使用するため先ほどダウンロードした、[signingCertificate.cer]をテキストエデ...