ソフトブレーン・インテグレーション株式会社
iPhoneやiPadなどのスマートデバイス導入コンサルティング
​ソフトブレーン・インテグレーション株式会社 

​お問い合わせ: 03-6892-1180(平日9:00~17:30)
  • ホーム
  • トピックス
  • サービス案内
    • Jamf >
      • Jamf Pro
      • Jamf Now
      • Jamf Now リモート導入支援
      • [Jamf×Mac] オフィス内の管理されていないMacが企業に脅威をもたらす
      • Jamf Protect
      • Jamf Connect
    • iOS ビジネスコネクト >
      • スマートフォン導入支援サービス
      • iPhone/iPad/Macキッティング
    • AMC (Advanced Mobile Center)
    • Ivanti Neurons for MDM >
      • ACCESS / SENTRY
      • Threat Defense
      • UEM
    • Zoom (Web会議システム)
    • Okta (ID管理クラウドサービス)
    • RemoteOperator Helpdesk
    • iOS 教育サービス >
      • iOS アーキテクチャ講習会
      • iOS ユーザー向け講習会
  • 会社案内
    • 会社概要
    • ご挨拶
    • 企業理念
    • 所在地
    • 採用情報
  • ブログ
  • お問い合せ

Okta Workflows で Box のファイルリンクを自動生成し、Slack にポストする

6/28/2024

0 コメント

 

Okta Workflows で、Box ファイルリンクを自動生成し、Slack にポストするサンプル

写真
前回は Okta Workflows の予告だけだったので、今回は Workflows を中心に書いていこうと思います!!

Okta の Workflows だと UD のユーザ情報を使って云々というようなケースもあるのですが、割と便利だなと思うのは、オーケストレーションに関する認証ロジックをスキップできることにあります。

というわけで Okta Workflows をやってみましょう

写真
今回は、以下のような Workflows を作ってみようと思います。
  • Boxの特定フォルダーにファイルがアップロードされたのをトリガーとして実行
  • Box にアップロードされたファイルの共有リンクを作成する(Box API)
  • Slack にファイル情報、共有リンクを通知する
写真
①Okta Workflows は管理者画面から、Workflow>Workflows console と進み Flows タブを選択し New Flow ボタンを押すことで、新しいワークフローを作成することができます。
​ 
Workflow の基本画面が表示されたら、Add Event をクリックします。
イベントトリガーとなるapplicationとしてBox を選択し、File Uploaded を選択し、New Connection を選択します。
写真

②​New Connection 画面でDescription を入力し、Create ボタンを押すと、Box への接続許可を求める画面が表示されるので「Boxへのアクセスを許可」ボタンを押します。
写真
③アップロードを監視したいフォルダーをブラウザで表示し、URL の filder/ 以降の番号をコピーし、貼り付け Save ボタンを押します。
写真

​④Box API で、アップロードされたファイルの共有リンクを作成していきましょう。

次に Add Function をクリックして、Okta Workflows で最もよく使われる Compose カードを選択し、
/files/ とタイプした後に、左側 Box Upload の Output 部分から File ID を /files/ の後に図のようにドラッグします。
写真

​⑤​ここまで出来たら一気に共有リンクを作成するとこまで進みましょう。
次のカードで Add Application をクリックし、Box を選択、Action 選択画面で Custome API Action を選択し、Request Type に PUT を選択し Save ボタンを押します。
チェックボックスは以下のようにチェックし Save ボタンを押します。
Inputs
  • Request Query
  • Request Headers
  • Request Body
Outputs
  • Response Status Code
  • Response Headers
  • Response Body

​1つ左の Compose の Output を Relative URL にドラッグし、Query 以下を以下のように入力します。

入力が完了したら、再び Add Function で新しいカードを作成し、Function 選択の左側ペインの下の方にある Advanced の JSON > Parse を選択し、Box Custom API カードの Response Body で入力した shared_link を JSON String 部分にドラッグし、JSON カードの output 部分に url とタイプします。
Box Custom API - Request &Response fields

    
写真

​⑥ここまでで、Box の指定のフォルダーにファイルがアップロードされたら、そのファイルに共有リンクを作成し、作成された url を取得できるところまでできあがりました。

次にこれらの情報を Slack に通知しましょう。

Add Application で新しいカードを作成し Slack を検索し、一番下の方にある Send Message to Channel を選択します。

Slack Connection を実行し、権限付与が完了したら、下記を設定して Save ボタンを押します。
  • 通知したいチャンネルを選択
  • Send as Bot = YES
  • Unfurl URL = YES
  • Message Type = Plain text

オプション選択では、チェックボックスは以下のようにチェックし Save ボタンを押します。
Inputs
  • Slackbot name
  • Slackbot Icon (Emoji)
Outputs
  • Message Timestamp

Send Message to Channel 画面では、Text 部分に Compose の Output をドラッグします。
通知bot の名前を Name に入れ、Icon Emoji に絵文字の名前をセットします。
​
写真

⑦​ここまで出来たら、右上の Save ボタンを押し、ワークフロー一覧に戻り、ON/OFF スイッチを ON にします。
写真

⑧指定したフォルダーにファイルをアップロードすると、Slack に通知されることが確認できます。(アイコンは box のアイコンをアップロードしたものを利用しています)
写真
写真

その他の留意点-1: Box の挙動による重複通知

今回のアップロード検知は以下のような場合に行われます。
  • Boxのファイルアップローダ経由でのアップロード(この場合ユーザは anonymous になります)
  • Boxの自社テナントでアクセス可能な自社ユーザ、外部コラボレーションユーザからのファイルアップロード
  • Boxの他社テナントで、外部コラボレーションされているフォルダーへのファイルアップロード(Workflow 作成者がコラボレーション招待されている必要あります)

しかし、Box は同一のファイルをリネームしたり、下位のサブフォルダーに移動したりするだけでも、アップロード通知が行われます。当社では Okta Workflows のテーブルを用いて、同一ファイルの通知がきた場合は無視するようにしていますが、今回のBoxアップロード通知はあくまでもサンプルとしての位置づけですので、スキップするロジックは含まれておりません。
​

その他の留意点-2: エラーハンドリング

今回は Okta Workflows のオーケストレーションに関するサンプルとして作成しましたが、実際にはエラー処理を組み込むことを推奨します。エラー処理については、下記に詳しく記載ありますので、一度ご確認ください。

Box API ドキュメント
https://ja.developer.box.com/reference/

Okta Workflows: フローにおけるカードのエラー処理の設定
https://help.okta.com/wf/ja-jp/content/topics/workflows/build/set-error-handling.htm

Okta Workflows: HTTPステータスコード
https://help.okta.com/wf/ja-jp/content/topics/workflows/execute/http-status-codes.htm
​

その他の留意点-3: デバッグ方法

デバッグ方法については、Workflow のカード編集画面の右上上部にある RUN というボタンを押すことで行うことができます。これは基本的なパラメータを手入力することにより行われます。うまく動かないなという場合は、このデバッグ方法を使って、どのうな結果が返ってきたのかなど詳しく確認することが可能です。
​

その他の留意点-4: Slack メッセージ

Slack API でアプリケーションを作成したことがある方はご存じだと思いますが、Slack のmessageにはプレーンテキストと、ブロックスという2種類があります。

Blocks を使うと、デザインレイアウトされたメッセージを投稿したり、インタラクティブにボタンをつけたり(OK , Cancel など)、ポップアップのダイアログで独立したアプリケーションのようなものを作成することもできます。当社では上長の承認業務を Slack を通じて承認が行えるワークフローを実現したりもしています。(Okta Workflows ではありませんが)そのため、iPhone の Slack アプリだけで承認ワークフローを素早く処理することができています。

Slack API も遊んでみるとかなり楽しいので、一度 Incomming Hook 辺りから BlockKit と組み合わせてやってみると面白いかもしれません!

Slack API - BlockKit
https://api.slack.com/block-kit

所感

この Okta Workflows を使うと、Jamf Pro に登録されているデバイスをユーザが Deactivate されたタイミングで Unmanaged にしてしまうとかも簡単に出来ます。ただ大量のリストを一度に取得したり、そもそもミッションクリティカルなワークフローには向いてません。

Okta Workflows は Okta での管理業務(プロビジョニング、特定の条件検知によるレポート出力)をオートメーション化することが可能ですが、今回は複数の SaaS アプリケーションの認証を Okta で一元化しているメリットが享受できるユースケースとしてご紹介いたしました。

また、オーケストレーションは 対象アプリが Okta で認証統合されていることでかなりのメリットがある反面、少し複雑なロジックを書こうとしたりすると、横スクロール・シューティングゲームですか並に長くなり、とても視認性が悪く、デバッグも大変になるという特徴があります。自分でプログラムやスクリプト書いちゃった方が早いやというパターンと、Okta Workflows でノーコード自動化するメリットはデザインするときによく考えてから着手くださいね。

あと、Okta として推奨されないユースケース(リアルタイム同期等)、イベント数制限などありますので、下記リンクをご参照いただき、そこら辺もご注意くださいね!

お疲れさまでした!

Workflowsのシステム制限
https://help.okta.com/wf/ja-jp/content/topics/workflows/workflows-system-limits.htm

Okta Workflows
https://help.okta.com/wf/ja-jp/content/topics/workflows/workflows-main.htm

当社のコンサルティングに関して詳しい内容はこちらをご覧ください。
0 コメント



返信を残す

    Author

    ソフトブレーン・インテグレーション株式会社
    代表取締役
    柴崎忠生
    ビジネス・インキュベーター
    セキュリティ・コンサルタント
    ITIL プロフェッショナル

    Archives

    4月 2025
    3月 2025
    1月 2025
    11月 2024
    10月 2024
    9月 2024
    7月 2024
    6月 2024
    3月 2024
    1月 2024
    12月 2023
    10月 2023
    9月 2023
    6月 2023
    5月 2023
    4月 2023
    3月 2023
    2月 2023
    1月 2023
    12月 2022
    11月 2022
    10月 2022
    9月 2022
    8月 2022
    7月 2022
    6月 2022
    5月 2022
    4月 2022
    3月 2022
    2月 2022
    1月 2022
    12月 2021
    11月 2021
    10月 2021
    9月 2021
    7月 2021
    6月 2021
    5月 2021
    4月 2021
    3月 2021
    2月 2021
    1月 2021
    12月 2020
    11月 2020
    10月 2020
    9月 2020
    8月 2020
    7月 2020
    6月 2020
    5月 2020
    4月 2020
    3月 2020
    12月 2019
    10月 2019
    9月 2019
    8月 2019
    7月 2019
    6月 2019
    5月 2019
    3月 2019
    2月 2019
    12月 2018
    9月 2018
    8月 2018
    7月 2018
    6月 2018
    5月 2018
    4月 2018
    3月 2018
    2月 2018
    1月 2018
    12月 2017
    11月 2017
    10月 2017
    9月 2017
    7月 2017
    6月 2017
    5月 2017
    4月 2017
    3月 2017
    1月 2017
    12月 2016
    10月 2016
    9月 2016
    8月 2016
    7月 2016
    6月 2016
    5月 2016
    4月 2016
    3月 2016
    2月 2016
    1月 2016
    12月 2015
    11月 2015
    10月 2015
    9月 2015
    8月 2015
    7月 2015
    4月 2015
    3月 2015
    12月 2014
    11月 2014
    10月 2014
    9月 2014
    8月 2014
    7月 2014
    6月 2014
    5月 2014

    Categories

    すべて
    Apple Transport Security
    Apple TV
    Apple Watch
    AppleConfigurator2
    Google Chrome
    ICloud
    IOS Security
    IOS ウィルス
    IOS セキュリティ
    IOS マルウエア
    IOS 安全性
    IOS7
    IOS8
    Ios8.2
    IOS9
    IOS9 コンテンツブロッカー
    IPad
    IPhone
    IPhone 6 Plus
    IPhone 6 Plus カメラ交換プログラム
    IPod Touch
    ITunes
    MacOSX
    MacOSX EL Capitan 10.11
    Microsoft Exchange
    WatchOS2
    XCodeGhost
    スクリプト
    セキュリティ
    バッテリー
    ベーシック認証廃止
    モバイルセキュリティ
    モバイル安全性
    モビリティ設計
    運用
    設計
    年金情報流出
    年金情報漏洩

    RSSフィード

ソフトブレーン・インテグレーション株式会社
〒
103-0012 東京都中央区日本橋堀留町2丁目3-5 木下ビルディング8階
tel 03-6892-1180 fax 03-6892-1183 url https://www.sbi.co.jp/
ホーム  | トピックス | セミナー情報  | お問合せ
会社案内 | 会社概要 | ご挨拶 | 企業理念 | 所在地
サービス案内 | 導入支援 | キッティング | AMC | ​Jamf Pro | Jamf Now | Jamf Nowリモート導入支援 | Mobile Iron | Zoom | Okta | iOSアーキテクチャ講習会 | iOSユーザ向け講習会 
サイトポリシー | サイトマップ 
Picture
ソフトブレーン・インテグレーション株式会社は、Apple Consultants Network に参加しています。Appleに認定されたコンサルタントとしてiOS/MAC 等Apple製品の導入支援事業を行っております。
▲上に戻る

Copyright(C) SOFTBRAIN INTEGRATION Co.,Ltd. All Right s Reserved.