diff --git a/doc/ldap_graph.dot b/doc/ldap_graph.dot index 4dcee28b..ed4f6a73 100644 --- a/doc/ldap_graph.dot +++ b/doc/ldap_graph.dot @@ -84,6 +84,24 @@ strict digraph "" { n2 [label=< + + + + +
+ + dn: ou=users,dc=yunohost,dc=org +
+ objectClass: organizationalUnit +
+ ou: users +
+ >] + n0->n2 + + + + n3 [label=<
@@ -97,11 +115,11 @@ strict digraph "" {
>] - n0->n2 + n0->n3 - n3 [label=< + n4 [label=<
@@ -115,11 +133,11 @@ strict digraph "" {
>] - n0->n3 + n0->n4 - n4 [label=< + n5 [label=<
@@ -133,11 +151,11 @@ strict digraph "" {
>] - n0->n4 + n0->n5 - n5 [label=< + n6 [label=<
@@ -151,29 +169,71 @@ strict digraph "" {
>] - n0->n5 - - - - n6 [label=< - - - - -
- - dn: ou=users,dc=yunohost,dc=org -
- objectClass: organizationalUnit -
- ou: users -
- >] n0->n6 n7 [label=< + + + + +
+ + dn: ou=permission,dc=yunohost,dc=org +
+ objectClass: organizationalUnit +
+ ou: permission +
+ >] + n0->n7 + + + + n8 [label=< + + + + + + + + + + + + +
+ + dn: cn=all_users,ou=groups,dc=yunohost,dc=org +
+ objectClass: posixGroup +
+ objectClass: groupOfNamesYnh +
+ gidNumber: 4002 +
+ cn: all_users +
+ permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +
+ permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org +
+ member: uid=alice,ou=users,dc=yunohost,dc=org +
+ member: uid=example_admin_user,ou=users,dc=yunohost,dc=org +
+ memberUid: alice +
+ memberUid: example_admin_user +
+ >] + n4->n8 + + + + n9 [label=<
@@ -193,44 +253,11 @@ strict digraph "" {
>] - n3->n7 + n4->n9 - n8 [label=< - - - - - - - - - -
- - dn: cn=sftpusers,ou=groups,dc=yunohost,dc=org -
- objectClass: posixGroup -
- gidNumber: 4002 -
- cn: sftpusers -
- memberUid: admin -
- memberUid: neutrinet -
- memberUid: alice -
- memberUid: bob -
- >] - n3->n8 - - - - n9 [label=< + n10 [label=<
@@ -256,11 +283,89 @@ strict digraph "" {
>] - n4->n9 + n5->n10 - n10 [label=< + n11 [label=< + + + + + + + + + + + +
+ + dn: cn=main.mail,ou=permission,dc=yunohost,dc=org +
+ objectClass: posixGroup +
+ objectClass: permissionYnh +
+ gidNumber: 5001 +
+ groupPermission: cn=all_users,ou=groups,dc=yunohost,dc=org +
+ cn: main.mail +
+ memberUid: alice +
+ memberUid: example_admin_user +
+ inheritPermission: uid=alice,ou=users,dc=yunohost,dc=org +
+ inheritPermission: uid=example_admin_user,ou=users,dc=yunohost,dc=org +
+ >] + n7->n11 + + + + n12 [label=< + + + + + + + + + + + +
+ + dn: cn=main.metronome,ou=permission,dc=yunohost,dc=org +
+ objectClass: posixGroup +
+ objectClass: permissionYnh +
+ gidNumber: 5002 +
+ groupPermission: cn=all_users,ou=groups,dc=yunohost,dc=org +
+ cn: main.metronome +
+ memberUid: alice +
+ memberUid: example_admin_user +
+ inheritPermission: uid=alice,ou=users,dc=yunohost,dc=org +
+ inheritPermission: uid=example_admin_user,ou=users,dc=yunohost,dc=org +
+ >] + n7->n12 + + + + n13 [label=<
@@ -274,11 +379,11 @@ strict digraph "" {
>] - n2->n10 + n3->n13 - n11 [label=< + n14 [label=< + + +
@@ -295,12 +400,15 @@ strict digraph "" {
objectClass: posixAccount +
+ objectClass: userPermissionYnh
loginShell: /bin/false
- uidNumber: 80833 + uidNumber: 23431
maildrop: example_admin_user @@ -315,7 +423,7 @@ strict digraph "" { mailuserquota: 0
- gidNumber: 80833 + gidNumber: 23431
sn: lastname @@ -340,14 +448,47 @@ strict digraph "" {
givenName: firstname +
+ permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +
+ permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org
>] - n6->n11 + n2->n14 - n12 [label=< + n15 [label=< + + + + + + + +
+ + dn: cn=example_admin_user,ou=groups,dc=yunohost,dc=org +
+ objectClass: groupOfNamesYnh +
+ objectClass: posixGroup +
+ gidNumber: 23431 +
+ cn: example_admin_user +
+ member: uid=example_admin_user,ou=users,dc=yunohost,dc=org +
+ >] + n4->n15 + + + + n16 [label=< + + +
@@ -366,7 +507,13 @@ strict digraph "" { objectClass: posixAccount
- uidNumber: 41580 + objectClass: userPermissionYnh +
+ loginShell: /bin/false +
+ uidNumber: 98803
maildrop: alice @@ -381,7 +528,7 @@ strict digraph "" { mailuserquota: 0
- gidNumber: 41580 + gidNumber: 98803
sn: pouet @@ -390,17 +537,47 @@ strict digraph "" { homeDirectory: /home/alice
- mail: alice@ynh.local + mail: alice@domain.com
givenName: alice
- loginShell: /bin/bash + permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +
+ permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org
>] - n6->n12 + n2->n16 + + + + n17 [label=< + + + + + + + +
+ + dn: cn=alice,ou=groups,dc=yunohost,dc=org +
+ objectClass: groupOfNamesYnh +
+ objectClass: posixGroup +
+ gidNumber: 98803 +
+ cn: alice +
+ member: uid=alice,ou=users,dc=yunohost,dc=org +
+ >] + n4->n17 } diff --git a/doc/ldap_graph.png b/doc/ldap_graph.png index 667a8284..f81c3e02 100644 Binary files a/doc/ldap_graph.png and b/doc/ldap_graph.png differ diff --git a/doc/ldapsearch.result b/doc/ldapsearch.result index ba4d4210..5adb9175 100644 --- a/doc/ldapsearch.result +++ b/doc/ldapsearch.result @@ -27,6 +27,12 @@ description: LDAP Administrator uidNumber: 1007 uid: admin +# users, yunohost.org +dn: ou=users,dc=yunohost,dc=org +objectClass: organizationalUnit +objectClass: top +ou: users + # domains, yunohost.org dn: ou=domains,dc=yunohost,dc=org objectClass: organizationalUnit @@ -51,11 +57,24 @@ objectClass: organizationalUnit objectClass: top ou: apps -# users, yunohost.org -dn: ou=users,dc=yunohost,dc=org +# permission, yunohost.org +dn: ou=permission,dc=yunohost,dc=org objectClass: organizationalUnit objectClass: top -ou: users +ou: permission + +# all_users, groups, yunohost.org +dn: cn=all_users,ou=groups,dc=yunohost,dc=org +objectClass: posixGroup +objectClass: groupOfNamesYnh +gidNumber: 4002 +cn: all_users +permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org +member: uid=alice,ou=users,dc=yunohost,dc=org +member: uid=example_admin_user,ou=users,dc=yunohost,dc=org +memberUid: alice +memberUid: example_admin_user # admins, groups, yunohost.org dn: cn=admins,ou=groups,dc=yunohost,dc=org @@ -65,17 +84,6 @@ memberUid: admin gidNumber: 4001 cn: admins -# sftpusers, groups, yunohost.org -dn: cn=sftpusers,ou=groups,dc=yunohost,dc=org -objectClass: posixGroup -objectClass: top -gidNumber: 4002 -cn: sftpusers -memberUid: admin -memberUid: neutrinet -memberUid: alice -memberUid: bob - # admin, sudo, yunohost.org dn: cn=admin,ou=sudo,dc=yunohost,dc=org cn: admin @@ -86,6 +94,30 @@ objectClass: top sudoOption: !authenticate sudoHost: ALL +# main.mail, permission, yunohost.org +dn: cn=main.mail,ou=permission,dc=yunohost,dc=org +objectClass: posixGroup +objectClass: permissionYnh +gidNumber: 5001 +groupPermission: cn=all_users,ou=groups,dc=yunohost,dc=org +cn: main.mail +memberUid: alice +memberUid: example_admin_user +inheritPermission: uid=alice,ou=users,dc=yunohost,dc=org +inheritPermission: uid=example_admin_user,ou=users,dc=yunohost,dc=org + +# main.metronome, permission, yunohost.org +dn: cn=main.metronome,ou=permission,dc=yunohost,dc=org +objectClass: posixGroup +objectClass: permissionYnh +gidNumber: 5002 +groupPermission: cn=all_users,ou=groups,dc=yunohost,dc=org +cn: main.metronome +memberUid: alice +memberUid: example_admin_user +inheritPermission: uid=alice,ou=users,dc=yunohost,dc=org +inheritPermission: uid=example_admin_user,ou=users,dc=yunohost,dc=org + # domain.com, domains, yunohost.org dn: virtualdomain=domain.com,ou=domains,dc=yunohost,dc=org objectClass: mailDomain @@ -98,13 +130,14 @@ uid: example_admin_user objectClass: mailAccount objectClass: inetOrgPerson objectClass: posixAccount +objectClass: userPermissionYnh loginShell: /bin/false -uidNumber: 80833 +uidNumber: 23431 maildrop: example_admin_user cn: firstname lastname displayName: firstname lastname mailuserquota: 0 -gidNumber: 80833 +gidNumber: 23431 sn: lastname homeDirectory: /home/example_admin_user mail: example_admin_user@domain.com @@ -113,6 +146,17 @@ mail: admin@domain.com mail: webmaster@domain.com mail: postmaster@domain.com givenName: firstname +permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org + +# example_admin_user, groups, yunohost.org +dn: cn=example_admin_user,ou=groups,dc=yunohost,dc=org +objectClass: top +objectClass: groupOfNamesYnh +objectClass: posixGroup +gidNumber: 23431 +cn: example_admin_user +member: uid=example_admin_user,ou=users,dc=yunohost,dc=org # alice, users, yunohost.org dn: uid=alice,ou=users,dc=yunohost,dc=org @@ -120,21 +164,33 @@ uid: alice objectClass: mailAccount objectClass: inetOrgPerson objectClass: posixAccount -uidNumber: 41580 +objectClass: userPermissionYnh +loginShell: /bin/false +uidNumber: 98803 maildrop: alice cn: alice pouet displayName: alice pouet mailuserquota: 0 -gidNumber: 41580 +gidNumber: 98803 sn: pouet homeDirectory: /home/alice -mail: alice@ynh.local +mail: alice@domain.com givenName: alice -loginShell: /bin/bash +permission: cn=main.mail,ou=permission,dc=yunohost,dc=org +permission: cn=main.metronome,ou=permission,dc=yunohost,dc=org + +# alice, groups, yunohost.org +dn: cn=alice,ou=groups,dc=yunohost,dc=org +objectClass: top +objectClass: groupOfNamesYnh +objectClass: posixGroup +gidNumber: 98803 +cn: alice +member: uid=alice,ou=users,dc=yunohost,dc=org # search result search: 2 result: 0 Success -# numResponses: 21 -# numEntries: 20 +# numResponses: 19 +# numEntries: 18