ApacheDSインスタンスを設定する必要があります。 Linuxでスタンドアロンの1.5.5を使用しています。サンプルパーティションを削除し、それぞれに独自のサフィックスが付いた独自のパーティションを2つ追加しました。 2つのパーティションのLDIFをインポートしましたが、データ的にはすべて正しく見えます。
匿名アクセスを禁止するようにApacheDSを構成する必要があります。ここでいくつかの指示に従うことでそれを行うことができました: http://directory.Apache.org/apacheds/1.5/145-enable-and-disable-anonymous-access.html - http://directory.Apache.org/apacheds/1.5/32-basic-authorization.html
これで、管理者アカウント(uid = admin、ou = system)のみがログインしてクエリを実行できます。
管理者アカウントと、各パーティション内の特定のエントリのみを読み書きできる「通常のユーザー」アカウントを確立する必要があります。私は上記のドキュメントを読み込もうとしましたが、気が狂いました。 2ページ目の「基本認証」は私には完全に理解できません。
Apache Directory Studioを使用して「prescriptiveACI」を追加しようとすると、次のようになります。
管理ポイント2.5.4.11 = abc、2.5.4.10 = efgにadministrativeRole属性が含まれていません!従属サブエントリを追加するには、管理ポイントのadministrativeRole属性が必要です。
ここで、私のパーティションは「ou = abc、o = def」です。私は何が起こっているのか見当がつかず、ドキュメントは本当に役に立たない、私はここで完全に途方に暮れている。アクセスを制限するだけでこれほど難しいのはなぜでしょうか。
P.S.適切な担当者がいる人は、タグ「Apache」を新しいタグ「ApacheDS」に変更できますか?
コンテキストエントリのadministrativeRole属性を定義する必要があります。
dn: o=ou=abc,o=def
changetype: modify
add: administrativeRole
administrativeRole: accessControlSpecificArea
http://directory.Apache.org/apacheds/1.5/32-basic-authorization.html#3.2.Basicauthorization-Furtherconfigurationtaskstoperformafterwards 十分に明確である必要があります。
ところで、ApacheDSユーザーのメーリングリストでそのような特定の質問をすることをお勧めします。
いくつかの異なる失敗がありました、それは判明しました。最大のことは、ある時点で、すでに presctiptiveACIピースを正常に作成したことです。 Apache Directory Studioは、右クリックして「サブエントリのフェッチ」と「操作属性のフェッチ」を選択しない限り、それらを表示しません。 accessControlSpecificAreaは操作属性であり、prescriptiveACIはサブエントリです。
今泥のようにクリア?すごい。