Date: 2005-01-16
Tags: zope

PloneのユーザーとグループをLDAPで管理する

LDAPですべてのユーザー管理を行うことを目標に、今回はPloneのユーザー・グループ管理をLDAPでやってみる実験をしてみた。

結論: 難解

結局今のところ、Plone2.1待ちだったりGRUF3.2待ちだったりするので、今公開されているPlone2.0.5やGRUF3.2RC1で運用するにはいくつか我慢しないといけない部分がある。 詳しくは、GRUF3.2RC1に添付されているREADME.txt, README-Plone.stx, README-LDAP.stx を参照。README.txtに同梱されているIRCのチャットログがすべてを物語っている気がする。

それはそれとして。今のバージョンでLDAP管理を使おうとした場合の手順と、自分の作業課題をメモメモ。

# あーー、つかれたー

確立した手順

  • Products
  • Setup (すべてPloneSiteオブジェクト以下で作業)
    • portal_skin/gruf_ldap_required_fields をcustomへ。
      • 何も変更せずに保存。(標準ではなぜかsyntax error)

    • acl_users→sourceの変更
      • UserSourceをLDAPUserFolderに設定、Group Stored on LDAPとする

      • GroupSourceをLDAPGroupFolderに設定

    • ZopeRoleのマッピング
      • PloneのRole名と同じ名前のGroupをLDAPに作り、mappingする
        • acl_users/Groups/LDAPGoupsFolderへ移動

        • GroupsタブでManager,Member,ReviewerをgroupOfUniqueMemberで追加

        • ページ下のAdd LDAP group to Zope role mapping で上記3つをマップ

    • Ploneグループの追加
      • Ploneの管理画面上でふつうに追加可能。

      • Role名がGroupとして見えるが、無視。

    • ユーザー追加
      • ふつうに追加

      • ログインするまではそのままでは検索一覧に見えない

残った問題と課題

  • ユーザーデータ
    • plone上からパスワード変更を行った場合にsambaパスワードも変更したい

    • uidを使えるようにしたい

    • mailaddrをLDAP上に格納したい

    • FullNameをLDAP上に格納したい

    • LDAPのcn,snがどちらもloginIdと同じになる問題

  • Plone上でユーザー一覧が表示されない(LDAPUserFolderの制限)

  • Plone上にZopeRoleにマッピングしたLDAPのGroupが表示される

  • manageページのGRUFでユーザー追加直後に"Clicking here"のリンク先が間違っている
    • リロードしてもNG

    • Usersタブを一度クリックするとOK

  • 追加後manageページのGRUFのUser一覧から追加ユーザーのリンクがエラーとなる
    • そのユーザーでログオンするとOKとなる。(readme-plone.stx)

  • 追加後ユーザーグループ管理で一覧に出てこない
    • そのユーザーでログオンして個人設定を保存した直後は一覧にでる

    • Groupの追加等を行うと再び表示されなくなる

  • manageの各ユーザー設定で、SetGroups,SetRolesでchangeするとエラーとなる
    • グループにroleを割り当てられない件と同一原因ではない。

  • LDAPUserFolderExtはGRUF3.1.xに取り込まれているため不要

  • LDAPUserFolder non-ASCII support complete はLDAPUserFolder2.3β3に取り込まれているため不要