adtech studio

LDAP管理が誰にでもできる!?統合権限管理システム

hajime By hajime

セキュリティ 組織文化

 こんにちは。アドテクスタジオでセキュリティエンジニアをしている岡崎です。

 今回は、サイバーエージェントが独自に開発し、アドテクスタジオでも活用している統合権限管理システム(Permission Manager)とLDAP管理について、次の内容で紹介します。

 ・従来のアドテクスタジオにおける権限管理課題
 ・統合権限管理システム(Permission Manager)と現在

 では早速!

 アドテクスタジオでは、各プロダクトと子会社(以下、プロダクト)ごとにツールや開発環境を持ち、それぞれの認証にLDAP(Lightweight Directory Access Protocol)を使用しています。

 その運用において次の課題を抱えていました。
 ・アカウントや権限管理をインフラチームに依頼しなければならない煩雑さ
 ・アカウント運用にはLDAPの知識が必要なため作業者が限られることによるリードタイム
 ・プロダクトのメンバーの入社・退職・異動に伴う権限管理ができない

 これらを解決するために、
統合権限管理システム(Permission Manager:以下、Per-Manと略す)を導入し、LDAPとその運用を刷新することにしました。

 

統合権限管理システム(Per-Man)とは

「アカウントと権限の管理が誰でもできる!」をコンセプトに

 ・LDAP管理者による集中管理からプロダクトごとの柔軟な管理へ
 ・Webコンソールの直感的なUIによってアカウントと権限の管理を簡略化
 ・人事データとの連携により、メンバーの入社・退職・異動に対して必要なアカウント管理を効率化

などを目的としてサイバーエージェントのセキュリティグループが開発したシステムです。

図1は、Per-Manの概略です。

(図1)Per-Manの概略図

大きく3つの特徴があります。

LDAP管理統合
 Per-Manが生成するLDAPデータを提供。各事業部/子会社がもつLDAP管理を統合。
APIサポート
 権限情報の参照/更新APIを提供。各種社内システムと連携し、権限管理の効率化。
人事データ連携と各種便利ツール
 人事部が管理する従業員のデータ、”通称:人事データ”と連携し、権限情報や社員情報、その他業務に役立つ便利ツールをWebコンソールで提供。人員、請求管理など権限管理以外の業務でも利用。

これらのうち、
アドテクスタジオでは、LDAP管理統合の機構を活用し、従来のLDAPを刷新しました。

(1)プロダクトごとの柔軟な管理へ

 これまでアカウントの権限追加・削除といった作業は、プロダクトからの依頼を受けて、インフラチームがLDAPコマンドを使って手作業で更新するという運用でした(図2)。

(図2) 従来の運用

 このため、プロダクト側にとっては依頼の手間、一方でインフラチームにとっては手作業が煩雑でした。さらに作業にある程度のLDAPの知識が必要なことから作業者が限られてしまうことで依頼からLDAPに反映されるまでのリードタイムに悩まされていました。

 しかし、これらの課題は、Per-Manを導入することによって解決しました。

 現在はインフラチームがやっていた作業をPer-ManのWebコンソールから直接操作することで依頼や手作業がなくなり、リードタイムなくプロダクト自身で自由に権限管理ができるようになったのです(図3)。    

(図3) Per-Manによる運用

 もちろん、プロダクトそれぞれがもつ”権限ごと”に、”権限の追加・削除のための権限”があり、これを持っている責任者以外はLDAPの操作はできません。

(2)直感的なUIと操作

 ”プロダクト自身でLDAPを直接操作できる!”
それは、Per-ManのWebコンソールが直感的だからです!(図4)

(図4)Webコンソールの直感的な操作(権限付与の例)

 Per-Manは人事データと連携しているため、Webコンソール上ではLDAPの属性ではなく、LDAPアカウントに紐付く社員番号や名前、所属といった”社員情報”でアカウントを管理します。

 つまり、いわゆる”LDAPの世界”を全く知らなくていいのです。
 そう!誰にでもできるのです。

(3)メンバーの入社・退職・異動をリアルタイムに把握

 一般的に、LDAP管理の課題の一つに”人の移動”があります。

 これまで、インフラチームには人事的な変化をリアルタイムに把握する仕組みがなく、各プロダクトからの申請や人事部に頼るしかありませんでした。そのため、異動や退職に対して必要なアカウントと権限の管理ができませんでした。

 その結果、退職者のアカウントが一定期間残ってしまったり、異動によってプロダクトと関係なくなった人が、そのプロダクトがもつシステムへのアクセス権を持ち続けるという、セキュリティ上の問題を抱えていました。

 これも人事データと連携するPer-Manを導入することによって解決しました。

 まず、退職者のアカウント管理が不要になりました。Per-Manが自動で消してくれるからです。
 あとは異動者の権限管理ですが、これも現在はPer-Manが提供する異動者の情報でリアルタイムに把握できます。そしてなにより関係者を知っているプロダクト自身がLDAPを操作できるようになったため、権限の棚卸しが簡単にできるようになりました

 このように、アドテクスタジオでは管理コストを削減しながら、アカウントと権限管理に関わるセキュリティレベルを向上させることができたのです!

 いかがだったでしょうか!?

 今回、従来の権限管理の課題とPer-Manの導入による主な効果を紹介してきました。他にもPer-Manにはさまざまな機能があります。

・社内Web学習システム(e-learning)の受講管理
・Webコンソールからユーザ自身でSSH公開鍵登録
・個人プロフィールによるGithub, Slackなどの業務用SNSアカウントの管理
など。

 Per-Manはアドテクスタジオのセキュリティの向上や業務改善に役立てる可能性をまだまだもっています!これからも、アドテクスタジオのさまざまな問題を解決していきます!

おわりに
 導入を進めるにあたり、Per-Manを開発・運営しているのが、私が日頃から密にコミュニケーション取っているセキュリティグループであったため、さまざまな調整を円滑に進めることができました。さらにシステムの刷新において、インフラチームにLDAPのエキスパートがいたことも大きな要因です。

 また、Per-Manの導入のためにインフラチームの方々をはじめ、多くの方に協力して貰い、大きなトラブルもなく進めることができました。この場を借りてお礼申し上げます。