Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Active Directory #TechLunch
Search
Livesense Inc.
PRO
September 03, 2014
Technology
2
120
Active Directory #TechLunch
Active Directory
2014/9/3 (水) @ Livesense TechLunch
発表者:吉田 航
Livesense Inc.
PRO
September 03, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_総合職採用_会社説明資料
livesense
PRO
0
1.3k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
5k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
130
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
0
1.6k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
510
26新卒_総合職採用_会社説明資料
livesense
PRO
0
12k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
47k
26新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
1
13k
中途セールス職_会社説明資料
livesense
PRO
0
280
Other Decks in Technology
See All in Technology
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
130
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
3
780
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
120
Overture Maps Foundationの3年を振り返る
moritoru
0
160
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
120
[JAWS-UG 横浜支部 #91]DevOps Agent vs CloudWatch Investigations -比較と実践-
sh_fk2
1
240
pmconf2025 - 他社事例を"自社仕様化"する技術_iRAFT法
daichi_yamashita
0
790
ブロックテーマとこれからの WordPress サイト制作 / Toyama WordPress Meetup Vol.81
torounit
0
510
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
5
1.4k
品質のための共通認識
kakehashi
PRO
3
220
因果AIへの招待
sshimizu2006
0
930
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
100
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
GitHub's CSS Performance
jonrohan
1032
470k
How STYLIGHT went responsive
nonsquared
100
6k
Rails Girls Zürich Keynote
gr2m
95
14k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
Balancing Empowerment & Direction
lara
5
790
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Designing for Performance
lara
610
69k
It's Worth the Effort
3n
187
29k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Building an army of robots
kneath
306
46k
Thoughts on Productivity
jonyablonski
73
5k
Transcript
Active Directory TechLunch at 2014/9/3 by Wataru Yoshida
今更ながらの自己紹介 • 吉田 航 • 2013年1月入社 • いわゆる社内SE的なお仕事 • 職歴
• 某大手SIerに8年在籍 インフラエンジニア 3年:NW機器とかサーバとか触ってました アプリケーションSE 3年:C#とかMSSQLとか触ってました 情報システム部門 2年 :いろいろ触ってました 2
やってきたお仕事 3 2013年2月 電話システム リプレース 2013年4月 Active Directory導入 2013年5月 社内システム用サーバー移設
2013年7月 無線LANリプレース、SSL-VPN導入 2013年9月 オフィス増床(久米ビル) 2013年11月 confluenceリプレース 2014年2月 消費税増税対応 2014年3月 JIRA導入 2014年4月 Google Apps導入、Gmail移行 2014年6月 オフィス増床(IKビル) 他にも組織変更対応、アカウント管理、内部統制対応、中間DBの改修など
本日のテーマ 4 Active Directory
5 1.Active Directory概要 2.Active Directory応用その1 3.Active Directory応用その2
Active Directoryとは • LDAPをベースとした、Microsoft製のディレクトリ サービス • Windows 2000 Server ではじめて搭載された
• 前身はWindows NTドメイン • 略してAD 6
LDAPとは • LDAP(Lightweight Directory Access Protocol) • ディレクトリサービスにアクセスするためのプロトコル • ディレクトリサービス
• ユーザーアカウントやコンピュータアカウント等の 情報を集約し、照会する機能を提供するサービス • 製品例 • OpenLDAP • Active Directory 7
LDAPのイメージ 8 ・ローカルにユーザーを持たず、LDAPでユーザーを一元管理 ※ホームディレクトリはローカルに保持し、認証のみをLDAPに任せる
Why Active Direcory ? • Windows製品との親和性 • グループポリシー(後述)が非常に強力 • デファクトスタンダード
• 連携できる製品が非常に多い • 管理が容易、ドキュメントも豊富 • MS製品にしてはよく出来てる • 高可用性&高安定性 • Windows Serverの標準機能(=無料!) 9
Active Directory導入のメリット • アカウント管理の負荷低減 • 入社、退社の際のアカウントメンテ • 管理者によるアカウントの無効化、パスワードリセット • Active
Directoryを認証基盤として活用 • 統制の強化 • パスワードポリシーの強制 • グループポリシーによる設定の統一 10
Active Directory導入前のリブセンス • 全PCのローカルユーザーのパスワードをExcel管理 • Pマークの運用で年1回のパスワード変更が必要 • 江原さんが全PCのパスワードを変えて回っていた(らしい) • 入社時のアカウント発行が苦行
• 当時のNASやブラウザチェック環境は、それぞれに同じID/PWの ローカルユーザーを登録していた • 「PCのパスワードが分からなくなった」 • 「ご愁傷様です」 11
12 これは早めにActiveDirectoryを 導入しないと死ぬ
Active Directory導入 • 速攻ActiveDirectoryを導入 • Windowsだけでなく、MacもADに登録 • ついでに無線LANの認証もAD連携させる • SSL-VPNの認証もADに任せちゃう
13
構成図 14
Active Directoryの画面(サーバ) 15
Active Directoryの画面(クライアント) 16
Active Directoryの画面(クライアント) 17
18 1.Active Directory概要 2.Active Directory応用その1 3.Active Directory応用その2
Active Directoryによる認証 • ADではアカウントをグループで束ねて管理することが可能 • グループはネスト可能 • NTFSアクセス権をADのグループで設定 • 組織変更が発生した際も、ADのグループをメンテするだけでOK
• 無線LANやSSL-VPNの認証もADのグループを利用 19
Active Directoryによる認証 20 NTFSアクセス権
Active Directoryによる認証 21
Active Directoryによる認証 無線LAN、SSL-VPN 22
グループポリシー • WindowsやOffice等の設定を強制配布する機能 • グループポリシーで配布された設定は、ローカルの設定 で上書きすることができない • 実際に配布している設定 • Windows
Updateの設定 • 無線LANの設定+証明書配布 • Officeの各種設定 • ログイン、ログオフスクリプト など • Windows以外のOSには適用不可 23
グループポリシーの設定画面 24 アルバイトPCから 外部媒体への書き込みを禁止
25 1.Active Directory概要 2.Active Directory応用その1 3.Active Directory応用その2
LDAPクエリ • ADが管理者にとって便利ということは分かった • 利用者側で何かに活用できないの? • ADの情報を他のシステムから参照したい • LDAPクエリによる問い合わせが可能 26
LDAPクエリ • LDAPクエリ • LDAPに問い合わせを行うためのクエリ • LDAPクエリの構文や基本的なアトリビュートは製品に 関わらず共通(RFCで定義されている) • 主要な言語であればLDAP用のライブラリが用意されて
いる 27
LDAPクエリ • RubyからActiveDirectoryにアクセスしてみる • ActiveRecordっぽくLDAPオブジェクトを 扱える”ActiveLdap”を使ってみる • 必要なgemのインストール 28 $
gem install net-ldap $ gem install activeldap
LDAPクエリ 29 HOST_IP_V4 = '192.168.20.221' BIND_BASE = 'ou=RootOU,dc=ad,dc=livesense,dc=co,dc=jp' BIND_USER =
'cn=200071,ou=Common,ou=User,ou=RootOU,dc=ad,dc=livesense,dc=co,dc=jp' BIND_USER_PASSWORD = 'hogehoge' BIND_PORT = 389 BIND_METHOD = 'plain' ActiveLdap::Base.setup_connection( :host => HOST_IP_V4, :port => BIND_PORT, :method => BIND_METHOD, :base => BIND_BASE, :bind_dn => BIND_USER, :password => BIND_USER_PASSWORD) ※ReadOnlyでよければ、自分の社員番号のユーザーで問題なし Active Directoryへのconnectionを張る
LDAPクエリ 30 class User < ActiveLdap::Base ldap_mapping dn_attribute: "cn", prefix:
'' end user = User.find('200071') #所属するグループの一覧を表示 user.memberOf.each do |member| p.member.rdns[0][‘CN’] end "G_触媒部_総務グループ“ "G_正社員“ "DL_SSLVPN_Permit“ … <出力> Active Directoryのユーザーオブジェクトを取得
LDAPクエリ • Railsに組み込んで、従業員マスタを作成してみる 31
LDAPクエリ • LDAPクエリを書く為には、LDAP識別名(dn)の記法と、 対象ドメインのOUのツリー構造を理解しておく必要があり ます。 • dn :LDAPオブジェクトを指定する識別名 • OU:オブジェクトを格納するコンテナ
32
LDAPクエリ 33 dn = 'cn=200071,ou=Common,ou=User,ou=RootOU,dc=ad,dc=livesense,dc=co,dc=jp' dn:カンマ区切りで識別子を並べた文字列 ドメイン OU オブジェクト名
LDAPクエリまとめ • LDAPクエリを活用すれば、ADのリソースに 他システムからアクセスできる • システム毎にアカウントの2重管理はせず、 ADにアカウントを集約することが可能 • LDAP認証を実装すれば、AD認証やSSOも実現可能 •
実際にAD認証機能を備えたパッケージも多い • Redmine、MS SQL Server、Google Apps、etc… 34
まとめ • Active Directoryにより管理者の運用負荷は大きく 低減される • Active Directoryを外部システムの認証基盤や 従業員マスタとして活用することが可能 35
36 ご静聴ありがとうございました