はじめに
どうもkakeruです。皆さんはSlackへのファイルアップロードの取り扱いについてどう考えていますでしょうか?
『誰でも気軽にアップロード/ダウンロードができるから使いやすい』、『機密ファイルをアップロードされるのが怖いから禁止にしたい』など企業によって様々だと思います。
本ブログでは、NetskopeにてSlackへアップロードしたファイルを全て自動で削除する方法について紹介いたします。
前提&注意点
- SlackとNetskopeのAPI連携が完了していること
- API Introspectionのライセンスが必要
- 設定方法については下記を参照のこと
Slack Enterprise Grid
Configure the API Connector for Slack for Enterprise
https://<御社テナント名>.goskope.com/docs/Netskope_Help/en/configure-the-api-connector-for-slack-for-enterprise.html
Slack Enterprise Grid以外
Configure the API Connector for Slack for Team
https://<御社テナント名>.goskope.com/docs/Netskope_Help/en/configure-the-api-connector-for-slack-for-team.html
- API Data Protectionにて、DLPを指定しない場合、ActionにDeleteを指定することができない
- DLP Ruleにて正規表現を利用して全てのファイルを削除するアプローチをとる
- ファイルのアップロード後にファイルが削除される
- アップロードから削除まで数分のタイムラグがある
- チャンネルとDMで別々に設定する必要がある
- DMへの設定はSlack Enterprise Gridのみ指定できる
- ワークスペースとDMの同時指定はできない
- Slackの共有チャンネルは未対応
- Enterprise Gridの場合、ワークスペースの設定で共有チャンネルへの添付をブロックすることができる
- 詳細については下記を参照のこと
Slack コネクトでファイルのアップロードを管理する
https://slack.com/intl/ja-jp/help/articles/1500005777562
以下に記載の拡張子+日本語名のファイルについては動作確認実施済みです。そのほか気になる拡張子のファイル等あれば動作確認を実施してください。
.png | |
.pptx | .zip |
.xslx | .svg |
.xlsm | .exe |
.docs | .ex_ |
.sh | .7z |
設定手順
DLP Ruleの作成
[Policies] > [Profiles] > [DLP] > [Data Loss Prevention Rules]の順に遷移して[NEW RULE]をクリックする
[CUSTOM]にて[Case Sensitive]し[[a-zA-Z]{1,}]を入力して[+]をクリックする
[CONTENT]にて[metadata & Contest]を選択し[Record Based Scan]にチェックを入れる
[SEVERITY THRESHOLD]にて、[Low Severity]に[1]を入力する
[SET RULE]にて任意のRule名を[RULE NAME]に入力して保存する
DLP Profileの作成
[Policies] > [Profiles] > [DLP]の順に遷移して[NEW PROFILE]をクリックする
[RULE|CLASSIFICATION]にて[DLP RUle]に先ほど作成したDLP Ruleを指定する
[SET PROFILE]にて、任意のprofile名を[PROFILE NAME]に入力して保存する
API Data Protectionの設定
[Policies] > [API Data Protection]の順に遷移して[NEW POLICY]をクリックする
それぞれ下記項目を選択し、[SAVE]をクリックして保存する
- APPLICATION
- APPLICATION
- Slack for Enterprise または Slack for Teams
- INSTANCE
- 設定を行いたいSlackのインスタンス名
- APPLICATION
- USERS
- ALL Users
- [Subset of Users]を指定した場合、該当ユーザが参加しているチャンネルに投稿される全てのファイルが対象となることに注意(該当ユーザ以外のファイルも削除される)
- ALL Users
- CHANNELS
- SCAN CONTENT FOR
- Channels
- Public Channel
- Private Channel
- Direct Messaging
- Channelsとは同時に指定できないため、別途ポリシーを作成する必要がある
- Channels
- SELECT TEAMS TO SCAN
- ワークスペースを分けたい場合は、[Subset of Workspaces]にてワークスペース を指定
- SCAN CONTENT FOR
- CONTENT
- FILE SHARING OPTIONS TO SCAN
- All Sharing Options
- CONTENT TYPE
- Files
- FILE SHARING OPTIONS TO SCAN
- DLP
- 事前に作成したDLP Profileを指定
- ACTION
- Delete
- Deleteを指定すると警告のポップアップが出るが[KEEP GOING]をクリックして進む
- Delete
- NOTIFICATION
- 任意で指定
- SET POLICY
- POLICY NAME
- 任意でポリシー名を入力
- POLICY DESCRIPTION
- ポリシーの説明任意で入力
- 誰がいつ何の目的で作成したのか記載すると良い
- POLICY NAME
動作確認
任意のファイルを用意し、対象のユーザにてファイルをアップロードします
ファイルのアップロード完了後、5分ほどで添付ファイルが削除されます
補足
全てのファイルをDeleteする方法について紹介しましたが、画像ファイルのみなど、特定の拡張子のファイルはDeleteせずに残したいといった要望もあると思います。その場合は、下記の通りDLP Profileの作成の際に、下記の通り設定することで実現できます。
File Profileの設定
[Policies] > [Profiles] > [File Profile]の順に遷移し[NEW FILE PROFILE]をクリック
[File Type]にて全てのCategoryにチェックを入れる
対象外としたい拡張子を検索し、チェックを外し[Next]をクリック
[PPROFILE NAME]を任意で設定して保存する
DLP Profileの設定
[Policies] > [Profiles] > [DLP]の順に遷移して[NEW PROFILE]をクリックする
[FILE PROFILES]にて、先ほど作成したFileProfileを指定する
以降の操作は全てのファイルをDeleteする際と同様に設定すること
終わりに
今回は、NetskopeにてNetskopeにてSlackへの添付ファイルを全てDeleteする方法についてまとめました。
Netskope関連のブログを書くのは初めてですが、これから増やしていければなと思います。