Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
Redmineを快適に使うためのおすすめ初期設定
Go Maeda
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Kuniharu(州晴) AKAHANE(赤羽根)
Docker Compose 徹底解説
Masahito Zembutsu
Rootlessコンテナ
Akihiro Suda
RedmineのFAQとアンチパターン集
akipii Oga
挫折しないRedmine
Go Maeda
BTS/ITSの近況とあれこれ 2015
minazou67
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Hadoop / Spark Conference Japan
1
of
42
Top clipped slide
開発環境の認証を改善して Redmineを社内標準にした話
Nov. 27, 2016
•
0 likes
3 likes
×
Be the first to like this
Show More
•
7,779 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Software
redmine.tokyo 第11回勉強会でのLT資料です。
Ryou Soda
Follow
System Engineer at Tsuken Advanced Systems
Advertisement
Advertisement
Advertisement
Recommended
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
onozaty
9.2K views
•
61 slides
View Customize Pluginで出来ること
onozaty
50.4K views
•
29 slides
うちのRedmineの使い方(2)
Tomohisa Kusukawa
4.1K views
•
27 slides
View customize pluginを使いこなす
onozaty
41.4K views
•
83 slides
ドキュメントを作りたくなってしまう魔法のツールSphinx
Takayuki Shimizukawa
89.2K views
•
78 slides
Redmine issue assign notice plugin の紹介
onozaty
2K views
•
13 slides
More Related Content
Slideshows for you
(20)
Redmineを快適に使うためのおすすめ初期設定
Go Maeda
•
324K views
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Kuniharu(州晴) AKAHANE(赤羽根)
•
103.5K views
Docker Compose 徹底解説
Masahito Zembutsu
•
60.5K views
Rootlessコンテナ
Akihiro Suda
•
2.3K views
RedmineのFAQとアンチパターン集
akipii Oga
•
66K views
挫折しないRedmine
Go Maeda
•
120.1K views
BTS/ITSの近況とあれこれ 2015
minazou67
•
20.9K views
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Hadoop / Spark Conference Japan
•
9.9K views
大規模Redisサーバ縮小化の戦い
Yuto Komai
•
37.6K views
はじめる! Redmine (2021年版)
Go Maeda
•
20.1K views
View customize plugin for Redmineの紹介 (2019年版)
onozaty
•
10.3K views
忙しい人の5分で分かるDocker 2017年春Ver
Masahito Zembutsu
•
29.2K views
std::pin の勘所
Hiroaki Goto
•
2.6K views
レシピの作り方入門
Nobuhiro Iwamatsu
•
61.2K views
DockerとPodmanの比較
Akihiro Suda
•
42.3K views
DeNA流cocos2d xとの付き合い方
dena_study
•
18.1K views
JIT のコードを読んでみた
y-uti
•
10K views
「伝わるチケット」の書き方
onozaty
•
3.1K views
Linux女子部 systemd徹底入門
Etsuji Nakai
•
135.9K views
Dockerイメージ管理の内部構造
Etsuji Nakai
•
35.7K views
Similar to 開発環境の認証を改善して Redmineを社内標準にした話
(20)
ゼロからのプログラミングRails講座 Codeanywhere版
DIVE INTO CODE Corp.
•
10.6K views
YYPHP #13 初めてのコードレビュー
宜浩 香月
•
812 views
Unofficial redmine cooking , unofficial-redmine.org 直近カスタマイズ事例
Yuuki Nara
•
168 views
Windowsサービスも.NET Coreで作ろう
keitasudo1
•
625 views
Softlayer_bluemix-summit
Shuichi Yukimoto
•
5.5K views
働き方改革を加速させるリモートワークソリューション ~Office 365 + XenAppで実現する安心安全なリモートワーク環境の構築~
NHN テコラス株式会社
•
1.5K views
Dockerを使ってみよう
Ryo Adachi
•
491 views
モバイルOSとWeb標準とそれらへのアプローチ
Kisato
•
7.7K views
ある工場の Redmine 2017
Kohei Nakamura
•
4.5K views
unofficial redmine 紹介 RedmineJapan2020
Yuuki Nara
•
1.7K views
20170705 apiをつくろう
CData Software Japan
•
1.2K views
作る人から作りながら運用する人になっていく
Ryo Mitoma
•
972 views
ここが良かったDatadog
tyamane
•
10K views
Unofficial Redmine Cooking & unofficial-redmine.org 紹介 redmine.tokyo#21
Yuuki Nara
•
183 views
Introduction of Rhodes
Hitoshi Kuroyanagi
•
1.8K views
Unofficial Redmine Cookingの紹介
Yuuki Nara
•
5.6K views
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
•
3.7K views
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
DIVE INTO CODE Corp.
•
88.8K views
.NET CoreアプリでWindowsの外に出発
ツール事業部 グレープシティ株式会社
•
771 views
ある工場はこれでRedmineバージョンアップを決意した
Kohei Nakamura
•
5.8K views
Advertisement
Recently uploaded
(20)
FIWARE Orion Context Broker コンテキスト情報管理 (Orion 3.9.0対応)
fisuda
•
0 views
留信网认证可查【俄克拉荷马大学文凭证书毕业证购买】
1lkjhg
•
2 views
☀️【斯旺西大学毕业证成绩单留学生首选】
25mjhd12
•
2 views
留信网认证可查【南安普顿大学文凭证书毕业证购买】
32lkhng
•
2 views
在哪里可以做《俄克拉荷马大学文凭证书|毕业证》
lobd15
•
2 views
留信网认证可查【威得恩大学文凭证书毕业证购买】
32lkhng
•
2 views
①【密德萨斯大学毕业证文凭学位证书|工艺完美复刻】
0987hgh789
•
2 views
留信网认证可查【麻省大学洛威尔分校文凭证书毕业证购买】
hh123hh1
•
2 views
留信网认证可查【俄亥俄大学文凭证书毕业证购买】
1lkjhg
•
2 views
JSUG Info Vol.13
Draft One
•
2 views
留信网认证可查【奥克兰大学文凭证书毕业证购买】
ihh14ds
•
2 views
留信网认证可查【艾格伍学院文凭证书毕业证购买】
32lkhng
•
2 views
在哪里可以做《南安普顿大学文凭证书|毕业证》
1232hdjk
•
2 views
留信网认证可查【莱比锡大学文凭证书毕业证购买】
khh123kj
•
2 views
在哪里可以做《邦德大学文凭证书|毕业证》
kjds1245
•
2 views
国外学历【奥克兰商学院研究生文凭毕业证留学生首选】
jsad789
•
2 views
☀️《USD毕业证仿真》
jjkjkijk
•
2 views
☀️【萨德伯里大学毕业证成绩单留学生首选】
15sad
•
2 views
留信网认证可查【马努卡理工学院文凭证书毕业证购买】
ihh14ds
•
2 views
留信网认证可查【堪萨斯大学文凭证书毕业证购买】
1lkjhg
•
2 views
開発環境の認証を改善して Redmineを社内標準にした話
開発環境の認証を改善して Redmineを社内標準にした話 2016/11/26 redmine.tokyo 第11回勉強会 Ryou
Soda
• 自己紹介 • 弊社のRedmine環境 •
以前の開発環境 • LDAP+AD認証環境構築 • 動作確認 • 現在の開発環境 • おわりに 目次
蘇田 亮(ソダ
リョウ) @ryouma_nagare 札幌に本社があるシステム開発ベンダーの東京事業所に勤務。 Linux歴はFM-TOWNSから始まり20年を越えました。好きなディストリビューションはVineLinux。 サーバ/DB系が得意。オープン系のWebアプリの基盤/設計がメインでしたが、1年ほど前にインフラ系の部 署に強引に異動。運用/監視業務は嫌いですが、基盤を作るのは好きです。 Redmine歴は4年ぐらい。 趣味はポケコン、Palmなどの古いガジェット収集。 自己紹介
弊社のRedmine環境
4コア/8GBの仮想サーバで運用中 その他にテスト用として3.2、3.3の 計3インスタンスを運用中。 個人的な好みで、unicorn+nginxで動 かしています。 CentOS7.2+Redmine2.6がメイン
→標準のガントチャートにはもう戻れません LycheeREDMINEを導入しています
使い方の例 - 工数管理 →WorkTimeプラグインにお世話になりっぱなし 案件の掛け持ちや間接稼働が多い部署のため、 •
工数管理専用のプロジェクトを作成 • 案件=チケットとして工数入力 しています。
使い方の例 - パートナー社員の契約管理 社外常駐者もいるため、全員の契約状況把握のために •
バージョン=会社名、親チケット=人名、子チケット=1契約 • 開始日~期日=契約期間 • カテゴリ=契約のステータス として管理しています。
最近、ラズパイ3にも入れました Redmine3.3をPassenger+ Apacheで動かしています。 Zabbixのアラートの他、リポジト リのコミット時にLEDを点滅させて 遊んでいます。 実用性は求めていませんw
以前の開発環境
社員数の都合上、プロジェクトはパートナー社員を含めた体制で進める ことが多いが、受入時に会社がするのは、 統括会社へ申請して社員ID発行 メールアドレス発行 NW検疫のアカウント発行 で全て。 会社がすること →統括会社のADには登録されるらしいが、開発環境から は見えない
VPN ファイルサーバ 社員アカウントだけ 各種開発サーバ等 リポジトリ、BTSなどすべてローカル認証。 IDは社員番号、メアドなどバラバラ… 当然、こんな状況に
社員アカウント 自前でLDAPを構築してパート ナー社員アカウントを登録 とりあえず自分のプロジェクトだけでも
→Apache、subversion等が対応できない。 だが、参照先が2つなのは不便
→LDAPをエンドポイントとして両方引くしかない! 社員アカウントパートナー社員アカウント 解決するには
LDAP+AD認証 環境構築
一つのツリーに見せかけるため、LDAPをADのサブドメインとして定義。 AD: dc=ZZZ,dc=local ユーザDN:cn=[漢字フルネーム],OU=OU_Users,dc=ZZZ,dc=local
という超センスのない定義。 LDAP: dc=YYY,dc=ZZZ,dc=local ドメイン定義
自分のアカウントでADを検索すると、パスワード変更のたびにLDAPの 設定変更が必要になってしまうので、 パスワード期限なし 検索権限のみ のADアカウントを要求。 検索用アカウントを作成 →裏から手を回した。ADの管理者に直接交渉。 社内で協力してもらったのはこれだけ。
日本語での情報が見あたらず、たどり着いたLinuxtopiaのページと、 最終的にはOpenLDAPの関連ファイルをmanする ことで必要な情報を得た。 検索ワード:"Linuxtopia LDAP Administration
Chaining" 情報の入手 →最初から標準ドキュメントを見るべきでした
→ログイン名属性はADに合わせるしかない ActiveDirectory OpenLDAP 問題:ADとLDAPの属性差異
# OpenLDAP User
schema objectclass ( 1.1.2.2.1 NAME 'PartnerObject' DESC 'Partner Object' SUP 'inetOrgPerson' STRUCTURAL MUST ( sAMAccountName ) ) →sAMAccountNameにuidと同じ値をセットする。 ※ADのスキーマ定義もLDAPに登録する必要があります。 解決策:inetOrgPersonスキーマを拡張 DNのフォーマットは sAMAccountName=[アカウント名],ou=[会社名],ou=partner,dc=YYY,dc=ZZZ,dc=local
ActiveDirectory OpenLDAP 社員アカウント パートナー社員アカウント 問題:ツリーを一つに見せる必要がある
dn: ou=XXX,dc=YYY,dc=ZZZ,dc=local changetype: add objectClass:
top objectClass: organizationalUnit ou: XXX dn: cn=proxy,ou=XXX,dc=YYY,dc=ZZZ,dc=local objectClass: referral objectClass: extensibleObject dc: AAATree cn: proxy ref: ldap://[ADのIP]/ou=OU_Users,dc=YYY,dc=local 解決策:referralオブジェクトを作成
OpenLDAP ActiveDirectory 見えた
chain-uri "ldap://[ADのIP]/" chain-rebind-as-user true chain-idassert-bind
bindmethod="simple" binddn="[AD検索ユーザーのDN]" credentials="[パスワード] " mode="legacy" flags="non-prescriptive" chain-acl-bind bindmethod="simple" binddn="[AD検索ユーザーのDN]" credentials="[パスワード]" AD検索アカウントのDN slapd.conf ー referralをたどる
# For Proxy database
ldap chase-referrals no suffix "dc=ZZZ,dc=local" uri ldap://[ADのIP]/ acl-bind bindmethod="simple" binddn="[AD検索ユーザーのDN]" credentials="[パスワード] " idassert-bind bindmethod="simple" binddn="[AD検索ユーザーのDN]" credentials="[パスワード]" mode="legacy" flags="non-prescriptive" ADのドメインがサーチベースの場合、 ADのみを検索する slapd.conf ー LDAPをプロキシとしてAD検索
動作確認
$ ldapsearch -x
-h [LDAPのIP] -D "[LDAP検索ユーザーのDN]" -w'[パスワード]' -b "dc=YYY,dc=ZZZ,dc=local" "(sAMAccountName=[社員ID])" "sAMAccountName" "mail" dn:: Y2496JiH55Sw5LquLG91PU9VX1VzZXJzLGRjPXRhZHMsZGM9bG9jYWw= sAMAccountName: [社員ID] mail: [社員のメアド]@ZZZ.co.jp 検索結果あり LDAPのサブドメインで社員アカウント検索
$ ldapsearch -x
-h [LDAPのIP] -D "[LDAP検索ユーザーのDN]" -w'[パスワード]' -b "dc=YYY,dc=ZZZ,dc=local" "(sAMAccountName=[パートナーID])" "sAMAccountName" "mail" dn: sAMAccountName=[パートナーID],ou=[会社名],ou=partner,dc=YYY,dc=ZZZ,dc=local sAMAccountName: [パートナーID] mail: [パートナーのメアド]@ZZZ.co.jp LDAPのサブドメインでパートナーアカウント検索 検索結果あり
$ ldapsearch -x
-h [LDAPのIP] -D "[LDAP検索ユーザーのDN]" -w'[パスワード]' -b "dc=ZZZ,dc=local" "(sAMAccountName=[社員ID])" "sAMAccountName" "mail" dn:: Y2496JiH55Sw5LquLG91PU9VX1VzZXJzLGRjPXRhZHMsZGM9bG9jYWw= sAMAccountName: [社員ID] mail: [社員のメアド]@ZZZ.co.jp ADのドメインで社員アカウント検索 検索結果あり
$ ldapsearch -x
-h [LDAPのIP] -D "[LDAP検索ユーザーのDN]" -w'[パスワード]' -b "dc=ZZZ,dc=local" "(sAMAccountName=[パートナーID])" "sAMAccountName" "mail" →すべて希望通りの結果 ADのドメインでパートナーアカウント検索 検索結果なし
現在の開発環境
参照先が一つになったので
周辺のツールが相乗り可能に
subversion - SASL経由でLDAP認証 GitBucket
- デフォルトでLDAP対応 Apache - mod_authz_ldapでBASIC認証のデータソースをLDAPに Let‘s Chat - LDAP対応のOSSチャット WordPress - LDAPでセルフサインアップを可能に phpLDAPadmin - 受入部署やパートナー自身の管理用GUI 周辺ツール →LDAPに対応しないツールは基本的に使わない ようになった
おわりに
自分が使っていたRedmineをベースとして社内標準にした。 アカウント統一によってRedmineのリポジトリ設定でマッピングが不要になった。 パートナー社員受入時のワークフローにLDAPアカウント作成が組み込まれた。 ただし、各PJの申告次第 phpLDAPadminを提供したことでアカウントのメンテナンスから解放された。
パスワード忘れは事務方で対応 チャット、社内向けの技術系ブログを始めたことで、情報がやりとりしやすくなった。 ローカルアカウントを作成しなくてよくなったので、参加のハードルが下がった Redmineのメンテナンス周知や、技術的な問い合わせがスピードアップ よかったこと →自分にとってはメリットがいっぱいあったが、
Redmineをうまく活用できずに、炎上プロジェクトが発生。 野良Redmine、野良リポジトリは相変わらずLDAPを使ってくれない。 社内共通のsubversionもローカル認証のまま… LDAPで参加のハードルを下げてもログインのみにとどまる社員が多い。 チャットもROM専が多い 30代半ば~後半くらいのリーダークラスが従来のやり方を変えることに消極的。
若手の社員はあまり抵抗がない 現在の問題 →周囲にはそれほどでもなかったらしい。
LDAPを導入することで、ログインのハードルは下がったが、なか なかアクティブになってくれない。 もともとアクティブだった社員はよりアクティブになったので、温度 差が広がってしまった。 今後はRedmineを中心にアクティブな社員を増やすべく、行 動を解析していきたいが、そこまで努力する必要があるか?と 考えてしまって、だいぶ心が折れています… 反省
監視中 →アクティブでない社員の解析はできないので、単なる趣味…
手順/設定等はQiitaで http://qiita.com/ryouma_nagare/items/bcda4c372347ed83fe7c
ご静聴ありがとうございました
Advertisement