この記事は、 NTT Communications Advent Calendar 2022 15日目の記事です。
2022/12/16 追記
想像以上に反響がありましたので、追記します。
「エンジニアのわがまま」発言について
そのような発言が出たのは、エンジニア側とシステム担当が互いに本音をぶつけ合ったからこそでした。 限られた時間枠の中でエンジニア側から畳みかけるように数多くの問題意識や要望をシステム担当側に突きつけるような形となり、双方ヒートアップした結果としてそのような発言につながっていました。
また、システム担当からすると下記の事実もヒートアップにつながる一因だったと思います。
- 新しい事務用 PC のリリースをやり遂げた直後で、利用する社員から「以前より便利になった」との声も出ていたタイミングだった
- 事務用 PC と開発・検証用 PC の 2 台持ちが必要なのはエンジニアが多く、その対象が全社員ではないこと
しかし、このイベントと今回紹介した取り組みを契機にシステム担当とエンジニアの間の風通しは格段と良くなり、エンジニア側としてもシステム担当が抱える思いや背景事情、価値観への理解が進みました。 システム担当側もエンジニアのペインに対する解像度が上がるとともに、エンジニアを頼ってくれるようになり、今では新しい技術の導入に際してエンジニアに相談が来ることも少なくありません。 本音をぶつけ合い、双方の価値観をすり合わせながら知恵を出し合った結果が今回の新しい開発・検証用 PC につながっています。
はじめに
みなさんこんにちは、イノベーションセンターの @Mahito です。 普段は社内のエンジニアが働きやすくなることを目標に、コーポレートエンジニアやエンジニア向けイベントの企画・運営をしています。
今回はこの夏社内でリリースされたエンジニア向けの開発・検証用 PC について、私や社内のエンジニアたちがどう関わったかのかを少しご紹介したいと思います。
NTT Com では元々、会社支給の事務用 PC でメールを始めとする社内システムへのアクセスなどの業務を行い、開発・検証する場合は各部や開発チームなどが個別に管理する PC を利用していました。そのため、社内のエンジニアは事務用 PC と 開発・検証用 PC を 1 日の中で何度も往復する手間がありました。また、セキュリティ的にも各部やチームごとに対応がバラバラで、問題があった際に会社として統一的な対応が難しい状況にありました。
今回リリースした開発・検証用 PC では、社内のエンジニア有志がシステム担当やセキュリティ担当と話し合いをしながら、会社で求められる様々な要件を技術的に解決し、会社として統一的なセキュリティ対策を施しました。これにより、開発・検証用 PC からメールなど社内の主要なリソースへアクセスできるようになり、エンジニアが何度も PC を往復することなく一日の業務をほぼ済ますことができるようになりました。
きっかけ
エンジニアが何度も PC を往復する状況を改善するきっかけは情報システムを担当する部署とエンジニアの話し合いでした。私が主催する NTT グループのエンジニア向けイベントにおいて、NTT グループ各社のシステム担当と、エンジニアがディスカッションする企画を実施しました。
NTT Com のエンジニア側からは、先に述べたように事務用 PC と開発・検証用 PC との往復が手間なため、会社として開発・検証用 PC からメールなどを見られるようにしてもらいたいという要望が上がりました。その場では開発・検証用 PC として MacBook を利用しているユーザが多く、会社として Mac を業務で使えるように認めて欲しいと言う声もありました。しかし、当時のシステム担当からは「それはエンジニアのわがまま」と言われ、その日に結論が出ることはありませんでした。
(議論するエンジニアとシステム担当)
議論には当時の経営層が数名参加していたこともあり、改めて私を含む社内のエンジニア、システム担当、セキュリティ担当とで話す場が設けられました。そこでは改めて開発・検証用 PC からメールなどにアクセスできるようにすることはわがままではなく、業務効率につながる改善だという話をしました。セキュリティ担当からも現状の開発・検証用 PC のセキュリティ的な課題を解決するきっかけにつながるとの援護もあり、「事務用 PC と同等のセキュリティが実現できるのであれば社内のリソースへのアクセスを認める」という条件が出されました。
わがままを技術で実現
セキュリティの要件の中で一番大きかったものは個人情報の漏洩対策です。
従来の開発・検証用 PC では社内のリソースにはアクセスできないため、個人情報などへのアクセスはありませんでした。しかし、メールなどの社内リソースにアクセスができるようになった場合、個人情報にアクセスする可能性があるため、個人情報の漏洩対策が必要となりました。
具体的には、個人情報保護法施行規則7条(個人の権利利益を害するおそれが大きいもの)の第1号においてカッコ書きの中に「高度な暗号化その他の個人の権利利益を保護するために必要な措置を講じたものを除く」という記述があり、この対応が必要となりました。
対応には「個人情報の保護に関する法律についてのガイドライン」及び 「個人データの漏えい等の事案が発生した場合等の対応について」 に関する Q&A(抜粋)で、以下の1と2または3のいずれかの要件を満たすことが必要とされています。
- 暗号化した情報と復号鍵を分離するとともに復号鍵自体の漏えいを防止する適切な措置を講じていること
- 遠隔操作により暗号化された情報若しくは復号鍵を削除する機能を備えていること
- 第三者が復号鍵を行使できないように設計されていること
事務用 PC は Windows であったため、Windows で要件を満たす方法はすでにわかっていましたが、Mac ではまだ社内のノウハウがない状態でした。そこで我々は社内のエンジニア有志で情報を集め、検証環境を用意し、モブプログラミングならぬモブ設定会などを通じてノウハウを貯めていきました。
システム担当との話し合いから2ヶ月ほど経つ頃には、上記の要件を Apple T2 セキュリティチップ, FileVault 2, Microsoft Intune などを利用することで技術的に満たせると確信を得ました。それに加え、情報システム担当・セキュリティ担当から出された追加の要件にも対応し、その翌月には新しい開発・検証用 PC のトライアルを社内の一部で開始しました。
セキュリティと柔軟な開発・検証業務の両立
新しい開発・検証用 PC では上記のように会社として求められるセキュリティの要件を満たしていきました。一方で、事務用 PC と完全に同等のセキュリティ要件で PC の設定やソフトウェアをガチガチに固めてしまうと、利用者の使い勝手のみならず開発・検証用途に求められる機能を損なう恐れがありました。
そのため、利用者が自由にソフトウェアや OS の設定をできるようにしつつ、必要なセキュリティを確保するために、下図のように管理範囲を明確にしました。
(新開発・検証用 PC と従来 PC との管理範囲比較)
上図で示すように、ハードウェアセキュリティ、ウイルス対策と検知、そして一部の OS の設定ポリシーをシステム担当側で管理し、それ以外を利用者に管理してもらいます。システム担当側では以下のような制限や設定を施していますが、利用者がこれらを意識することはほぼありません。
- 社内リソースへのアクセスは登録済みの PC に限定(端末制限)
- PC のポリシーチェック(パスワードポリシー、OS バージョン、その他設定など)
- EDR/AV の自動配布と全アクティビティの監視・異常検知
- etc...
これにより、PC へのソフトウェアのインストールなどの自由は残しつつ、何かあった際に会社側で検知・追跡・確認ができるようになっています。
社内の反応
トライアル当初から従来だと事務用 PC からしかアクセスできなかった、メールや社内ポータル、Office などの会社リソースを開発・検証用 PC から使える様になった上、従来の開発・検証用 PC とほぼ変わらない使い勝手ということもあり利用者からは好評を得ています。特に、私を含む Mac で開発・検証作業をしていた人からは「ほぼ一日の作業を Mac で完結できて便利」との声が上がっています。
この夏の全社リリースでは従来より初期の利用申請や設定の手間が少し増えたこともあり多少の混乱はありましたが、現在は特に大きな問題もなく新しい開発・検証用 PC の利用者は社内で着実に増えていっています。
まとめ
元々は「エンジニアのわがまま」と言われたところから始まった話ですが、この夏無事に新しい開発・検証用 PC を社内でリリースするに至りました(トライアルの開始から色々紆余曲折を経てだいぶ時間がかかりましたけど)。
まだすべての社内システムにアクセスできないことや、Linux デスクトップユーザのサポートが出来ていないなどの課題もあります。しかし、現在は最初の頃と異なり、情報システム担当やセキュリティ担当と話し合いをしながら課題解決に取り組みやすい状態にあります。この状態を活かして、今後も引き続き情報システム担当やセキュリティ担当、社内のエンジニアたちと協力をしながらエンジニアが働きやすくなる環境を目指して、残る課題の解決に当たっていきます。
以上で、NTT Communications Advent Calendar 2022 15日目の記事は終わりです。 それでは、明日もお楽しみに!