Netskopeでできる絶対に期限を守りたくなる文化の作り方

# 前置き

この記事は[株式会社ビットキー 情シス Advent Calendar 2023](https://qiita.com/advent-calendar/2023/bitkey-corp-eng) の23日目の投稿です。
平日のみの投稿とする方針だったのですが、いい意味で私の読み甘く予想以上にチームメンバーが投稿頑張ってくれたことで、ストックしていた記事が余ってしまったのでここに供養します。

はじめまして。株式会社ビットキーの日浦です。

先日、[Japan Okta User Group Communityの2023忘年会](https://okta.connpass.com/event/303066/)にLT登壇させていただきました。
本記事はLTで話したネタの一つで、情シスあるあるな悩みをパワー（問題解決能力、技術力、権力、、、etc）で解決する案をリライトしたものです。


# 本題

情シスをやっていると、社員に「X日までに対応お願いします！」と、お願いごとをすることがとても多いと思います。OSのアップデートとか、e-Leaningの対応とか、色々な棚卸しとか…etc
期日までに対応が必要な業務の例として、勤怠締めや評価対応、経費精算のような仕事もありますね（弊社では情シス仕事ではないですが）

私自身こういった自分のメインでない業務を、ちゃんと期日までに終わらせられるタイプではないので、後回しにしてしまう人の気持ちもわかります。が、期日までに対応できなかった人や遅れている人のリマインドに工数を割いて、本来やるべき業務工数が逼迫してしまうのは構造的に仕方ないにせよ、とてももどかしい気持ちになります。

なんなら、本来やるべき業務環境改善のプロジェクト遅延に繋がり、「ちゃんと期日までに対応してくれた大多数の人たち」が本来享受するはずだった人へのメリット提供が遅れていくのは本末転倒です。

端的に言うと **無茶苦茶腹が立つ**ので、コストをほとんどかける必要なく、「期日を守らないと！！」という文化を醸成するための仕組みを考えてみました。


::: note warn
※ ボツ案です
弊社においても、**まだ**未リリースなので、現時点では真心込めて人力でリマインドをすることもあります。
:::

# 前提

- 弊社ではIDaaSにOkta、CASBにNetskopeを利用しています

# 過去の施策

はじめに、e-Leaningの例で、過去にやってみた施策を紹介します

## 1. Slackで「#tmp-20xx年xx月期限-e-leaning」チャンネルを作って終わった人から抜けてもらう

これはとても単純ですが、わりとよくある例だと思います。

対応が必要な人だけ招待したチャンネルを作り、終わったら抜けてもらう。個人的にこの方法で気に入っているのは、 **対応完了した人はうざいリマインドを見る必要がない** という点です。

割れ窓理論じゃないですが、期日を守らない人へのリマインドが視界に入れるのもなかなかのノイズです。「ちゃんと対応した人」にとってはストレスフリーなので、よくできた仕組みだと思います。

デメリットとしては、 **やらないやつはやらない** ことであり、全然対応してくれないイレギュラーが1人いるだけで、情シスは**毎日1人の対象に向けてひたすら`@channel`でリマインドをするマシーン**になる必要があります。

※ もちろん、最後の数人であれば**いきなり座席訪問したり、WebMTGを入れてタスクが終わるまで見守る**といったパワー（圧力）で解決する情シスもいるかも知れません。

## 2. 未対応者のリストを作成し、リマインドを各部門の担当者に託す

現場の担当者はマネージャーのときもあれば、アシスタントのときもあります。

これは情シスの作業負担をアウトソーシングしているだけなのであまり好きなやり方ではありません。現場が出してくれる対応済みの人の一覧の精査や突合の作業もあるので、じつは情シス側での作業負荷は大きく変わらなかったりします。

ただし、部門ごとに対応状況を可視化しやすくなり、その情報を全社に公開することで、**e-Leaningが部門のプライドを賭けたチキンレースに変貌する**ため、人数が多い部門であるほど成果が上がる傾向があります。

「自分が部門の足を引っ張っていることが可視化される」という危機感によって追い詰められたメンバーが120%の成果を出しているのでしょうか。

こういった余計な洞察を生むことになるため、やはりこの方法はあまりおすすめできません。

しかし、この施策を続けると、各部門のマネジメント側の期日管理についての感度が高くなり、情シスがリマインドする前に先んじてチーム内に声掛けをしてくれるという光景は見られました。

## 3. 未対応者に対して毎日Slack botでリマインド

ぶっちゃけ時間の無駄です。やらないやつはSlackのbotなんか見ていません。（個人の感想です）

## 4. Calendarに期日を登録しておく

Slack botと比較するとそれなりに効果的です。
全員のカレンダーに予定が登録されていることから、期日前になると、現場側のチームMTGなどで「未対応の人、やっときましょうね〜」という自主的な声掛けが生まれやすいです。
**「期日を守ろうという空気作り」** という施策としては一定有効ですが、本質的には「期日を過ぎている人にタスクの優先度を上げてもらう」という効果はほとんどない点に注意が必要です。

## 5. ~~脅す~~ 技術的な制約を課す

「◯◯日までに▼▼の対応が終わっていない人は■■を停止・禁止します」

■■には「Slackのアカウント」であったり、「PCのログイン」であったり、「Notion」であったり様々です。

「やるべきことをやっていない人に対して、なにをどこまで禁止するのが妥当なのか」という判断のが非常に難しく、検討には想像以上のコストと政治力が必要です。

仮にe-Leaningが完了していないメンバーがいた場合、そのメンバーは「機密である」という定義をした情報にアクセスさせないべきでしょう。ただし、具体的な方法論が非常に難しく、だいたいは大味な制御・禁止施策になることが予想されます。

派生して、**OSアップデートやマルウェア対策ソフトの更新が終わっていなかったら業務システムにアクセスさせない**という制御は、セキュリティ観点としても運用観点としても情シスとしてはぜひ実現したいですが、実際にやろうと思うとなかなか難しいものです。

※ ちなみに当社の環境ではできる

# Netskopeとは

唐突ですが、ここでNetskopeの説明です。昔はCASBのNetskopeというイメージでしたが、もはやCASBもNetskopeの機能のひとつでしかなく、より広義のSASEというソリューションの位置付けです。

詳しい説明は他に譲りますが、

- シャドーITの検知
- Webアクセスの可視化・高度な制御
- クラウドサービスのセキュリティスコアのデータベース

といった機能が代表的です。

**シャドーITを検知し、データベースでNetskopeによる評価点を確認し、リスク値が高いようなら社用PCからはアクセスやファイルアップロードを禁止する**といった形で利用することが多いのではないでしょうか。

また、上述の「Webアクセスの可視化・高度な制御」はかなり柔軟性が高く、

- 例えば流行りの生成AIにPostする際に一度確認のダイアログを表示させたり
    
![スクリーンショット 2023-12-14 22.06.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/545278/72893bbf-7fb9-f1bd-3e8d-fb5021a6d248.png)    

- URLそのものへのアクセスをブロックすることが可能です。
    
![スクリーンショット 2023-12-14 20.47.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/545278/c8fa1a6a-b02e-2c57-0cd9-0f749eafda96.png)
    

また、当然ですが宛先だけでなく、対象者も自由に選択することができます。個人単位の指定や、OktaからPushしたグループを対象にできるため、

- **任意のグループ × 任意のサイト・サービス・URL × 任意のアクションに対して**
- **禁止制御や、任意のアラートが表示できる**

というとても表現力が高い制御が実現できます。

![スクリーンショット 2023-12-14 22.22.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/545278/c16a886f-e125-6ded-bd48-8a029cb401f2.png)


# いつかやるかもしれないけど、そもそもこんなことやる必要がない世界を夢見て

ということは技術的には

- **期日を過ぎても未対応な人たちのOkta Groupを作成してNetskopeに連携し**
- **e-Learningサービス以外のすべてのサービスへのアクセスを禁止**

ということが可能になります。

::: note
細かい話だがNetskope>Policy>Destinationで`Any Web Trafiic`でブロックした際、 「e-Learningサイトだけ除外」はできないので、実際は業務で利用されるAppやURLをブロックリスト形式で指定することになる。
:::

また、先日の記事でも紹介したOkta Access Requestsを利用すれば労力なく申請者のManagerの承認を必須にするというワークフローが組めるため **「終わったよ！」という報告を受けた後、結果の管理を「Managerの承認」** という形で締めくくることも可能です。

承認後、自動で「期日を過ぎても未対応な人」というOkta Groupから外す形ですね。



https://qiita.com/h_r_w_t_r/items/181518fa2c3fe6694cfa

![スクリーンショット 2023-12-14 23.06.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/545278/dfb6333f-18de-3862-a411-53b070d53c8d.png)


**「e-Leaningが終わってないからe-Leaningサイト以外表示できなくする」** はギリギリ正当性がありそう。

::: note warn
繰り返しですが、これはボツ案です
:::


# We are hiring

こういうおもしろピタゴラスイッチを考えるのは非常に楽しいのですが、ちょうどいい塩梅を判断するのがなかなか難しいので、一緒に試行錯誤したり、ディスカッションできる仲間を募集中です。

もし興味を持っていただけた際には下記からのご連絡お待ちしています！！

https://jobs.qiita.com/employers/240/dev_talks/251

https://wk87qzuwsh2.typeform.com/to/IhG1fHSj?typeform-source=qrcode-button