LDAP検索フィルターの作成方法
プラットフォームに関する注意事項:サーバーおよびデータセンターのみ-この記事は、サーバーおよびデータセンタープラットフォーム上のアトラシアン製品にのみ適用されます。
目的
このドキュメントでは、アトラシアンアプリケーションのLDAP構成で、ユーザーオブジェクトフィルタおよびグループオブジェクトフィ
フィルタとは
フィルタは、アプリケーションへのアクセスを許可されているユーザーまたはグループの数を制限するために使用できます。 本質的に、フィルタは、アプリケーションが同期するLDAPツリーのどの部分からのフィルタを制限します。
フィルタは、ユーザーとグループのメンバーシップの両方のために書くことができます。 これにより、アクセスを必要としないユーザーやグループでアプリケーションをフラッディングしないようにします。
ソリューション
フィルタを構築するときは、アプリケーションへのアクセスを許可するユーザーセットの共通属性を選択するのが最善です。 これは、ほとんどの場合、グループメンバーシップまたは”Person”
グループ内のメンバーシップを示すために使用される属性は、LDAPのすべてのフレーバーに共通ではありません。 この属性の例は、”groupMembership”または”Member”
複数の属性を一致させるにはどうすればよいですか?たとえば、ユーザーが2つのobjectClass属性(1つは’person’、もう1つは’user’に等しい)を持つことで区別されている場合、これは私がそれを一致させる方法です:p>
開始時にampersand symbol '&'
シンボルに注意してください。 翻訳されたこれは、objectClass=personおよびobject=userを検索することを意味します。または、
(|(objectClass=person)(objectClass=user))
翻訳されたこれは、objectClass=personまたはobject=userを検索することを意味します。P>
pipe symbol '|'
は’OR’を表します。 これは特別なXML文字ではないので、エスケープする必要はありません。
ワイルドカード
(&(objectClass=user)(cn=*Marketing*))
これは意味します: objectClass=userおよび”Marketing”という単語を含むcnを持つすべてのエントリを検索します。
ワイルドカードは、使用しているフィルタで使用される場合にはサポートされていません! (またはそうでない)論理演算子。 以下を参照してください
LDAPサービス自体は、LDAPFilterを設定するときにmemberOf
attribute
およびその他の識別名のワイルドカード
3つの属性を一致させるにはどうすればよいですか?
余分な句を追加するだけです:P>
(&(objectClass=user)(objectClass=top)(objectClass=person))
三つ以上の属性に対しても余分な句を追加することができます。
識別名の一致するコンポーネント
Microsoft Active Directoryは拡張可能な一致を実装していないため、次の例では機能しません。たとえば、サーバーの2つのサブツリーでグループを検索する必要がある場合など、DNの一部を一致させることができます。P>
(&(objectClass=group)(|(ou:dn:=Chicago)(ou:dn:=Miami)))
は、’Chicago’または’Miami’のいずれかであるDNのOUコンポーネントを持つグループを検索します。
‘not’を使用する
式に一致するエンティティを除外するには、’!’.
だから
(&(objectClass=group)(&(ou:dn:=Chicago)(!(ou:dn:=Wrigleyville))))
Wrigleyville ouコンポーネントを持つものを除くすべてのChicagoグループを検索します。
余分な括弧に注意してください:(!(<>))
‘not’を使用している場合に注意してください。 ‘!”オブジェクトを除外するには)エンティティとして表現する必要があります”!’Confluence3.4以下を使用している場合は、XMLファイル内にあります。
Confluence3の場合。4以下では、このドキュメントを使用して検索フィルタを構築したら、XMLファイルに追加する前にアンパサンド記号と感嘆符記号をエスケープする必 たとえば;
(&(objectClass=person)(!(objectClass=user)))
(&(objectClass=person)(!(objectClass=user)))
エスケープが必要な他のXML文字については、この外部ドキュメントを参照してください。become
サンプルフィルタ
これらのフィルタはActive Directory用に書かれています。 OpenLDAPなどのためにそれらを使用するには、属性を変更する必要があります。
これは、’CaptainPlanet’グループ内のユーザーのみを同期します-これは、ユーザーオブジェクトフィルタに適用する必要があります。
(&(objectCategory=Person)(sAMAccountName=*)(memberOf=cn=CaptainPlanet,ou=users,dc=company,dc=com))
これは、このグループのメンバーであるユーザーを、直接またはネストを介して検索します。
(&(objectCategory=Person)(sAMAccountName=*)(memberOf:1.2.840.113556.1.4.1941:=cn=CaptainPlanet,ou=users,dc=company,dc=com))
captainplanetグループ内でネストされたグループ(数値文字列を置き換えない)を検索する場合は、1.2.840.113556.1.4.1941を使用します。
これは、4つのグループ(fire、wind、water、heart)のいずれかまたはすべてのメンバーであるユーザーを検索します
(&(objectCategory=Person)(sAMAccountName=*)(|(memberOf=cn=fire,ou=users,dc=company,dc=com)(memberOf=cn=wind,ou=users,dc=company,dc=com)(memberOf=cn=water,ou=users,dc=company,dc=com)(memberOf=cn=heart,ou=users,dc=company,dc=com)))
このドキュメントでは、LDAP設定アトラシアンのアプリケーション。
Leave a Reply