Articles

LDAP検索フィルターの作成方法

プラットフォームに関する注意事項:サーバーおよびデータセンターのみ-この記事は、サーバーおよびデータセンタープラットフォーム上のアトラシアン製品にのみ適用されます。

目的

このドキュメントでは、アトラシアンアプリケーションのLDAP構成で、ユーザーオブジェクトフィルタおよびグループオブジェクトフィ

フィルタとは

フィルタは、アプリケーションへのアクセスを許可されているユーザーまたはグループの数を制限するために使用できます。 本質的に、フィルタは、アプリケーションが同期するLDAPツリーのどの部分からのフィルタを制限します。

フィルタは、ユーザーとグループのメンバーシップの両方のために書くことができます。 これにより、アクセスを必要としないユーザーやグループでアプリケーションをフラッディングしないようにします。

ソリューション

フィルタを構築するときは、アプリケーションへのアクセスを許可するユーザーセットの共通属性を選択するのが最善です。 これは、ほとんどの場合、グループメンバーシップまたは”Person”

tip/restingのようなobjectClassを示す属性ですSketchで作成されました。

グループ内のメンバーシップを示すために使用される属性は、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))

三つ以上の属性に対しても余分な句を追加することができます。

識別名の一致するコンポーネント

Tip/resting Sketchで作成されました。

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)))
(&amp;(objectClass=person)(&#33;(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)))

Description

このドキュメントでは、LDAP設定アトラシアンのアプリケーション。