Re: 問題ID 28335について(質問)

この質問の投稿一覧へ

なし Re: 問題ID 28335について(質問)

msg# 1.1.1
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-5-23 22:24
cadlyus  新米   投稿数: 2
arashi1977さん、こんばんは。
返信が遅くなってしまい、すみません。
回答ありがとうございました!
引用:
arashi1977さんは書きました:

勘違いしてはいけないのは、anonymousは「匿名のユーザ」ではなく、「認証前のユーザ」であることですね。

「access to * by anonymous read」というアクセス制限は「認証前のユーザに対して、全てのエントリの読み取りを許可する」ということです。認証前のユーザということは、OpenLDAPで管理している(アクセス制限可能な)ユーザ以外も対象なわけです。
そうすると、「登録されたユーザであろうがなかろうが、全てのエントリの参照を許可する」ので、「上位のユーザ」とか関係ないってことになりますね。
なるほど!
ユーザが登録されているかどうかは関係ないということですね。

よくよく考えてみると、
LDAPサーバにアクセス要求 → アクセス許可判定(ここでユーザ認証) → LDAPサーバアクセス
という流れであるため、認証されていないユーザ(anonymous)を許可していれば、ユーザ認証以前に許可されますね。
引用:
そして参考にもありますが
引用:
by以降に記述されている条件は順番に処理され、条件にマッチするとそれ以降の条件は処理されません。記述する順番には注意が必要です。
と、「by * none」が評価される前に、(認証前の)全てのアクセスに対して読み取り許可を付与する条件がマッチしていますので、「それ以外は拒否」が発動しません。

というところでどうでしょうか?
認証時に「access to * by anonymous read」で引っかかってしまうため、「by * none」は発動しないんですね。
確かにそれですと、「access to * by * read」と同じ動作になりますね。(実質すべてのアクセスに対して許可)

色々調べてもなかなか分からず、モヤモヤしておりましたがやっと理解できました。
arashi1977さん、改めて回答ありがとうございました。

投稿ツリー

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.