포럼: 도움 (Thread #32260)

登録ユーザーの一括削除または一括検索 (2012-05-28 11:15 by odahara #64041)

Trac Lightning 3.1.1を運用し、プロジェクトごとにPMがユーザー登録しています。
ISMSの関係で「プログラムソースコードへのアクセス制御・・プログラムソースコードへのアクセスは、制限しなければならない。」
という項目があり、「プロジェクトを外れたユーザーは削除する」ことが原則ですが、現実的にはそのような運用は無理だと思っています。
そこで「プロジェクトを外れても、社員でいる間は再度参加する可能性があるので削除しない。退職者が出たら、そのユーザーを削除する」というようにしようと考えています。
で、tracの複数プロジェクトに登録されているユーザーを一括削除する方法、もしくは一括検索する方法はないものでしょうか?
例えばWindowsのVSSの場合だと、登録ユーザー名はテキストファイルに書かれているので findstr で一括検索できます(一括削除はできませんが)。
ユーザーがWindowsのActive Directoryに紐付いて、ADユーザーを削除したら自動的に削除されるのが一番嬉しいですが、そんなことはできないでしょうし・・

よろしくお願いします。

RE: 登録ユーザーの一括削除または一括検索 (2012-05-29 11:34 by jun66j5 #64058)

> Trac Lightning 3.1.1を運用し、プロジェクトごとにPMがユーザー登録しています。
管理 > アカウント・ユーザからユーザ登録を行って、個々のプロジェクトの権限管理から必要な権限を設定している、ということでよいでしょうか?

> ISMSの関係で「プログラムソースコードへのアクセス制御・・プログラムソースコードへのアクセスは、制限しなければならない。」
> という項目があり、「プロジェクトを外れたユーザーは削除する」ことが原則ですが、現実的にはそのような運用は無理だと思っています。
> そこで「プロジェクトを外れても、社員でいる間は再度参加する可能性があるので削除しない。退職者が出たら、そのユーザーを削除する」というようにしようと考えています。
> で、tracの複数プロジェクトに登録されているユーザーを一括削除する方法、もしくは一括検索する方法はないものでしょうか?

登録したユーザは <INSTALLDIR>\projects\trac.htdigest に入っていて以下のような状態になっています。

test:trac:36c6af7afdad707bbcc185a18a2febbf

潰しておきたいユーザのところを # でコメントにしてしまえばよいのではないでしょうか。

割り当てた権限を操作したい場合は trac-admin コマンドから permission remove コマンドを使えば複数のプロジェクトを全部処理するバッチファイルなどを作れるはずです。

> ユーザーがWindowsのActive Directoryに紐付いて、ADユーザーを削除したら自動的に削除されるのが一番嬉しいですが、そんなことはできないでしょうし・・
Active Directory を使う場合は mod_ldap, mod_authnz_ldap を使えばできるはずです。
CollabNetSVN\httpd\conf\httpd.conf にコメントで設定例が書かれています。それを参考にしてください。

ちなみに、デフォルトの権限設定ではログインをしなくても各 Trac プロジェクトにアクセスできるのでユーザを潰しただけではソースにアクセスできなくはなりませんが、必ずログインしてからでないとプロジェクトにアクセスできないように設定されているのでしょうか?
Reply to #64041

RE: 登録ユーザーの一括削除または一括検索 (2012-05-30 08:13 by odahara #64067)

jun66j5さん、

ありがとうございます。trac.htdigest を操作することで目的は達成できそうです。

「プログラムソースコードへのアクセスは、制限しなければならない」となっていますが、イントラなので「見るだけは誰でもいいよ。でも修正できるのは登録ユーザーだけ」とできればそれでOKです。
Reply to #64041