見出し画像

足元すくわれがちなセキュリティの話と、開発の民主化

開発をしていると機能面に議論が集中しがちだ。画面のボタン配置はどうなっているのか。使いやすい画面遷移になっているのか。

入力制限はどのようになっているのか。私たちが消費者としてサービスを利用している時も目にするものなので、実感が湧きやすいし誰でも議論に参加しやすい。

ところが、開発が佳境になったタイミングでふと誰かが口を挟む。

この画面、幅広い人に見えすぎじゃない?

世の中は人手不足がますます深刻化しており、派遣会社や非正規雇用の人間に頼る場面が増えている。

すなわち社外の人間が事業所内を出入りすることが増える。すると、自然な流れで見せても良い情報/見せてはいけない情報の区分けが必要になる。

処理対象が紙の時は、セキュリティスペースや金庫などを設けて物理的に隠しておくことでセキュリティを担保できた。ところが、電脳空間ではそうはいかない。

IDごとのアクセス制限を設定しておかないと、ホイホイと見れてしまう。

問題はIDの区分けである。固有名でアクセスを管理するのは保守性を考えると現実的ではない。役職と権限がしっかりと対応していれば良いのだが、例外もあるだろう。

期間限定で権限をつけたい人間もいる筈だ。逆に、「この人たちには見せてはいけない」という閲覧禁止リストが存在する場合もある。

どんな方法が最適かは使用するサービス内容にもよるが、一つ確実に言えることは「追加で権限付与が必要な場合に備えて、個別権限付与の道筋を作っておく」のが重要だということだ。

権限設定に限らないが、どんなシステムにも例外処理が必要な場面が必ずある。

システムのエラーチェックがガチガチなせいで、例外処理の時に100%アナログでせざるをえないのか、逃げ道を作っておいて一部を機械が手助けしてくれるようになっているのかは、設計の腕が出るところである。

変化の激しい社会において、権限移譲は組織のスピード感を高める効果が期待でき、最近ではよく聞かれる言葉になった。

システムもこのような変化に対応して、「権限変更をユーザー側で迅速にメンテできる」ことが求められるだろう。

ノーコード開発という言葉が流行っていたが、これは一部の開発者に独占されていたシステム改修の門戸を開く、「開発の民主化」である。

開発の中でこのような「ユーザーによるメンテ可能性」について提案するエンジニアは、世の中の変化に敏感だと感じる。システム改修のたびに過酷な開発予算獲得競争に挑んでいたら、組織のスピードは落ち込むばかりである。

職場の同僚に小学生の流行りを聞くと、マインクラフトを熱心にやっているらしい。プログラミングが学校で必修になることを考えると、ユーザー自身によるシステム改修が当たり前になる時代の到来も近そうである。

いいなと思ったら応援しよう!