2017-05-09 23 views
1

Linuxマシンでgitlabをセットアップしようとしています。そして、私は/etc/gitlab/gitlab.rbファイルのLDAP設定に固執しています。 黒と緑のチームのメンバーにアクセスを許可し、他のメンバーにアクセスを拒否したいと考えています。ldap-groupに基づくgitlabへのアクセス

私のconfには、次のようになります

gitlab_rails['ldap_enabled'] = true 

###! **remember to close this block with 'EOS' below** 
gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' 
main: 
    label: 'LDAP' 
    host: 'hidden' 
    port: 'hidden' 
    uid: 'sAMAccountName' 
    method: 'plain' 
    bind_dn: 'hidden' 
    password: 'hidden' 
    active_directory: true 
# allow_username_or_email_login: true 
# block_auto_created_users: false 
    base: "cn=Black Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com" 
    base: "cn=Green Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com" 
# user_filter: '' 
# attributes: 
# username:['uid', 'userid', 'sAMAccountName'] 
# email: ['mail', 'email', 'userPrincipalName'] 
# name:  'cn' 
# first_name: 'givenName' 
# last_name: 'sn' 
# ## EE only 
# admin_group: '' 
# sync_ssh_keys: false 
EOS 

が、それは仕事をdoesntの。おそらく、そのような構成ではグループのアクセス権が付与されますが、グループのメンバーは許可されないためです。サブグループ/サブアイテム/サブ要素がアクセスを許可する方法はありますか?

私たちはこのような何か行うことができます知っている:「誰もができるように、そして黒&グリーンチームのメンバーだけに結果をトリム」 と、それは今のところ正常に動作しますが、後:となります

base: '' 
    user_filter: '(|(memberOf=cn=Black Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com)(memberOf=cn=Green Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com))' 

を少数のチームを追加するとフィルタが長くなり、複雑なフィルタの場合は更新が容易ではありません。

私は、リストされたグループのすべてのメンバー(「ベース」フィールド内)を許可するソリューションに興味があります。 "base"フィールドで複数のグループを定義することはできますか? "基本"フィールドにリストされているグループのメンバーにアクセスを許可することはできますか?

答えて

0

私はあなたがそれをベースフィールドにすることはできませんし、ベースは1つだけだとは思いませんが、マルチラインは非常に長いフィルターを編集しやすくするでしょうか?

改行は空白として扱われるため、行ごとにグループ名が表示される場合に役立ちます。

user_filter: '(|(memberOf=cn=Black Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com) 
       (memberOf=cn=Green Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com)) 
       (memberOf=cn=Another Team,OU=hidden2,OU=hidden3,OU=hidden4,OU=hidden5,OU=hidden6,DC=ad,DC=companyname,DC=com))' 
関連する問題