Difference between revisions of "stoney core: Global Searches"

From stoney cloud
Jump to: navigation, search
[unchecked revision][unchecked revision]
(Alphanumerical value (non-integer) Search)
(Alphanumerical value (non-integer) Reseller Search)
 
(56 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
Also visit [[stoney core: Search Resource - REST API]] and [[stoney core: Search Resource Mapping (REST - LDAP)]].
 +
 
= Overview =
 
= Overview =
The main search field in the upper right corner searches the whole directory and gives first results while typing (actual search starts after entering three characters). The following example shows, that after typing four letters, we have four results (each containing the first four letters “Müll”):
+
The main search field in the upper right corner searches the whole directory and gives first results while typing (actual search starts after entering three characters). The following example shows, that after typing four letters, we have four results (each containing the first four letters “step”):
* Two customers “Peter Müller” and “Stefan Müller”.
+
 
* One reseller “Müller & Co GmbH”.
+
[[Image:Search.png]]
* One service “Online Backup 10 Gigabyte (Hausi Müller)”.
+
 
  
 
== Search Selection ==
 
== Search Selection ==
Line 12: Line 14:
 
== Reseller Search ==
 
== Reseller Search ==
 
=== Numerical value (integer) Reseller Search ===
 
=== Numerical value (integer) Reseller Search ===
The following example shows you the numerical value (integer) search (uid search) with '''400''' (400*) as the search parameter and '''o''' (for the organisation) as the return value:
+
The following example shows you the numerical value (integer) search (uid search) with '''400''' (400*) as the search parameter and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values (the size limit is set to 5):
 
<pre>
 
<pre>
ldapsearch -H ldaps://ldapm.tombstone.ch \
+
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
   -b "ou=reseller,dc=foss-cloud,dc=org" \
+
   -b "ou=reseller,dc=stoney-cloud,dc=org" \
   -s sub \
+
   -s one \
   -D "cn=Manager,dc=foss-cloud,dc=org" \
+
   -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 
   -W -x -LLL \
 
   -W -x -LLL \
   "(&(sstBelongsToResellerUID=4000000)(uid=400*))" o
+
   "(uid=*400*)" o sstIsActive
 
</pre>
 
</pre>
  
Line 26: Line 29:
 
The result(s):
 
The result(s):
 
<pre>
 
<pre>
dn: uid=4000000,ou=reseller,dc=foss-cloud,dc=org
+
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
o: Reseller Ltd.
+
sstIsActive: TRUE
 +
o: stepping stone GmbH
 
</pre>
 
</pre>
  
Line 43: Line 47:
 
-D: binddn
 
-D: binddn
 
       Use the Distinguished Name binddn to bind to the LDAP directory.
 
       Use the Distinguished Name binddn to bind to the LDAP directory.
 +
-z sizelimit
 +
      retrieve at most sizelimit entries for a search. A sizelimit of
 +
      0  (zero)  or none means no limit.  A sizelimit of max means the
 +
      maximum integer allowable by the protocol.  A server may impose
 +
      a maximal sizelimit which only the root user may override.
 
-W:    Prompt for simple authentication.  This is used instead of spec-
 
-W:    Prompt for simple authentication.  This is used instead of spec-
 
       ifying the password on the command line.
 
       ifying the password on the command line.
Line 54: Line 63:
  
 
=== Alphanumerical value (non-integer) Reseller Search ===
 
=== Alphanumerical value (non-integer) Reseller Search ===
The following example shows you the alphanumerical value (non-integer) search with '''res''' (res*) as the search parameter  and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values:
+
The following example shows you the alphanumerical value (non-integer) search with '''ste''' (*ste*) as the search parameter  and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values (the size limit is set to 5):
 
<pre>
 
<pre>
ldapsearch -H ldaps://ldapm.tombstone.ch \
+
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
   -b "ou=reseller,dc=foss-cloud,dc=org" \
+
   -b "ou=reseller,dc=stoney-cloud,dc=org" \
   -s sub \
+
   -s one \
   -D "cn=Manager,dc=foss-cloud,dc=org" \
+
   -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 
   -W -x -LLL \
 
   -W -x -LLL \
   "(&(sstBelongsToResellerUID=4000000)(o=res*))" o sstIsActive
+
   "(o=*ste*)" o sstIsActive
 
</pre>
 
</pre>
  
Line 68: Line 78:
 
The result(s):
 
The result(s):
 
<pre>
 
<pre>
dn: uid=4000000,ou=reseller,dc=foss-cloud,dc=org
+
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
o: Reseller Ltd.
+
 
sstIsActive: TRUE
 
sstIsActive: TRUE
 +
o: stepping stone GmbH
 
</pre>
 
</pre>
  
 
== Customer Search ==
 
== Customer Search ==
=== Numerical value (integer) Search ===
+
The customer search is a bit different than the reseller search, because we can have company and private customers.
The following example shows you the numerical value (integer) search (uid search) with '''400''' (400*) as the search parameter and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values:
+
 
 +
=== Numerical value (integer) Customer Search ===
 +
The following example shows you the numerical value (integer) search (uid search) with '''400''' (400*) as the search parameter and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values (the size limit is set to 5):
 
<pre>
 
<pre>
ldapsearch -H ldaps://ldapm.tombstone.ch \
+
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
   -b "ou=customers,dc=foss-cloud,dc=org" \
+
   -b "ou=customers,dc=stoney-cloud,dc=org" \
   -s sub \
+
   -s one \
   -D "cn=Manager,dc=foss-cloud,dc=org" \
+
   -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 
   -W -x -LLL \
 
   -W -x -LLL \
   "(&(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001)(uid=400*))" o sstIsActive
+
   "(&(sstBelongsToResellerUID=4000000)(|(uid=*400*)(sstExternalID=*400*)))" o sn givenName sstIsActive sstExternalID
 
</pre>
 
</pre>
  
Line 89: Line 102:
 
The result(s):
 
The result(s):
 
<pre>
 
<pre>
dn: uid=4000001,ou=customers,dc=foss-cloud,dc=org
+
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org
o: Customer Ltd.
+
sstIsActive: TRUE
 +
o: stepping stone GmbH
 +
sstExternalID: 40013
 +
 
 +
dn: uid=4000083,ou=customers,dc=stoney-cloud,dc=org
 +
sstIsActive: TRUE
 +
o: DEVROOM
 +
</pre>
 +
 
 +
=== Alphanumerical value (non-integer) Customer Search ===
 +
The following example shows you the alphanumerical value (non-integer) search with '''ste''' (*ste*) as the search parameter and the attributes '''o''' (for the organisation), '''givenName''', '''sn''' (surname) and '''sstIsActive''' as the return values (the size limit is set to 5):
 +
<pre>
 +
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
 +
  -b "ou=customers,dc=stoney-cloud,dc=org" \
 +
  -s one \
 +
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 +
  -W -x -LLL \
 +
  "(&(sstBelongsToResellerUID=4000000)(|(o=*ste*)(sn=*ste*)(givenName=*ste*)(sstExternalID=*400*)))" o givenName sn sstIsActive sstExternalID
 +
</pre>
 +
 
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 
 +
The result(s):
 +
<pre>
 +
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org
 +
sstIsActive: TRUE
 +
o: stepping stone GmbH
 +
sstExternalID: 40013
 
</pre>
 
</pre>
  
 
== Person (People) Search ==
 
== Person (People) Search ==
 +
=== Numerical value (integer) People Search ===
 +
The following example shows you the numerical value (integer) search (uid search) with '''400''' (*400*) as the search parameter and the attributes '''o''' (for the organisation) and '''sstIsActive''' as the return values (the size limit is set to 5):
 +
<pre>
 +
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
 +
  -b "ou=people,dc=stoney-cloud,dc=org" \
 +
  -s one \
 +
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 +
  -W -x -LLL \
 +
  "(&(sstBelongsToResellerUID=4000000)(uid=*400*))" o sn givenName sstIsActive
 +
</pre>
 +
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 +
The result(s):
 +
<pre>
 +
dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Michael
 +
sn: Eichenberger
 +
sstIsActive: TRUE
 +
 +
dn: uid=4000064,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Christian
 +
sn: Wittkowski
 +
sstIsActive: TRUE
 +
 +
dn: uid=4000066,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Stijn
 +
sn: Van Paesschen
 +
sstIsActive: FALSE
 +
 +
dn: uid=4000069,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Jan
 +
sn: Guldentops
 +
sstIsActive: FALSE
 +
 +
dn: uid=4000080,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Tatiana
 +
sn: Eichenberger
 +
sstIsActive: TRUE
 +
</pre>
 +
 +
=== Alphanumerical value (non-integer) People Search ===
 +
The following example shows you the alphanumerical value (non-integer) search with '''mic''' (*mic*) as the search parameter and the attributes '''o''' (for the organisation), '''givenName''', '''sn''' (surname) and '''sstIsActive''' as the return values (the size limit is set to 5):
 +
<pre>
 +
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
 +
  -b "ou=people,dc=stoney-cloud,dc=org" \
 +
  -s one \
 +
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 +
  -W -x -LLL \
 +
  "(&(sstBelongsToResellerUID=4000000)(|(o=*mic*)(sn=*mic*)(givenName=*mic*)))" o givenName sn sstIsActive
 +
</pre>
 +
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 +
The result(s):
 +
<pre>
 +
dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org
 +
givenName: Michael
 +
sn: Eichenberger
 +
sstIsActive: TRUE
 +
</pre>
 +
 +
== Services Search ==
 +
Each Service needs to be looked at separately, because the services have different dn's attributes.
 +
 +
=== Backup ===
 +
==== Numerical value (integer) Backup Search ====
 +
The following example shows you the numerical value (integer) search (uid search) with '''372''' (*372*) as the search parameter and the attributes '''uid''' (for the backup account uid), '''gecos''' (the backup name), '''sstQuota''' and '''sstIsActive''' as the return values (the size limit is set to 5):
 +
<pre>
 +
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
 +
  -b "ou=backup,ou=services,dc=stoney-cloud,dc=org" \
 +
  -s sub \
 +
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 +
  -W -x -LLL \
 +
  "(&(sstBelongsToResellerUID=4000000)(uid=*372*))" uid gecos sstQuota sstIsActive
 +
</pre>
 +
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 +
The result(s):
 +
<pre>
 +
dn: uid=3723707,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
 +
uid: 3723707
 +
gecos: Michael Eichenberger
 +
sstIsActive: TRUE
 +
sstQuota: 10737418240
 +
 +
dn: uid=3723708,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
 +
uid: 3723708
 +
gecos: Christian Wittkowski
 +
sstIsActive: TRUE
 +
sstQuota: 10737418240
 +
</pre>
 +
 +
==== Alphanumerical value (non-integer) Backup Search ====
 +
The following example shows you the alphanumerical value (non-integer) search with '''mic''' (*mic*) as the search parameter and the attributes '''uid''' (for the backup account uid), '''gecos''' (the backup name), '''sstQuota''' and '''sstIsActive''' as the return values (the size limit is set to 5):
 +
<pre>
 +
ldapsearch -H ldaps://ldapm.stoney-cloud.org \
 +
  -b "ou=backup,ou=services,dc=stoney-cloud,dc=org" \
 +
  -s sub \
 +
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
 +
  -z 5 \
 +
  -W -x -LLL \
 +
  "(&(sstBelongsToResellerUID=4000000)(|(cn=*mic*)(gecos=*mic*)(givenName=*mic*)))" uid gecos sstQuota sstIsActive
 +
</pre>
 +
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 +
The result(s):
 +
<pre>
 +
dn: uid=3723707,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
 +
uid: 3723707
 +
gecos: Michael Eichenberger
 +
sstIsActive: TRUE
 +
sstQuota: 10737418240
 +
</pre>
 +
 +
=== Mail ===
 +
==== Numerical value (integer) Mail Search ====
 +
 +
==== Alphanumerical value (non-integer) Mail Search ====
 +
 +
  
[[Category:Selfcare]]
+
[[Category:stoney core]][[Category:OpenLDAP directory]]

Latest revision as of 11:51, 25 May 2014

Also visit stoney core: Search Resource - REST API and stoney core: Search Resource Mapping (REST - LDAP).

Overview

The main search field in the upper right corner searches the whole directory and gives first results while typing (actual search starts after entering three characters). The following example shows, that after typing four letters, we have four results (each containing the first four letters “step”):

Search.png


Search Selection

After the user has entered the first three characters, we do a first search selection:

  • Numerical value (integer): Start a search for a uid (unique identifier)
  • Alphanumerical value (non-integer): Start a search for either displayName or gecos.

Reseller Search

Numerical value (integer) Reseller Search

The following example shows you the numerical value (integer) search (uid search) with 400 (400*) as the search parameter and the attributes o (for the organisation) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=reseller,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(uid=*400*)" o sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
sstIsActive: TRUE
o: stepping stone GmbH

Legend:

-H: ldapuri
       Specify URI(s) referring to the ldap server(s).
-b: searchbase
       Use searchbase as the starting point for the search  instead  of
       the default.
-s: base|one|sub
       Specify  the  scope of the search to be one of base, one, or sub
       to specify a base object, one-level,  or  subtree  search.   The
       default is sub.
-D: binddn
       Use the Distinguished Name binddn to bind to the LDAP directory.
-z sizelimit
       retrieve at most sizelimit entries for a search.	A sizelimit of
       0  (zero)  or none means no limit.  A sizelimit of max means the
       maximum integer allowable by the protocol.  A server may	impose
       a maximal sizelimit which only the root user may override.
-W:    Prompt for simple authentication.  This is used instead of spec-
       ifying the password on the command line.
-x:    Use simple authentication instead of SASL.
-LLL:  Search  results  are  display  in  LDAP  Data Interchange Format
       detailed in ldif(5).   A  single  -L  restricts  the  output  to
       LDIFv1.   A  second  -L  disables comments.  A third -L disables
       printing of the LDIF version.  The default is to use an extended
       version of LDIF.

Alphanumerical value (non-integer) Reseller Search

The following example shows you the alphanumerical value (non-integer) search with ste (*ste*) as the search parameter and the attributes o (for the organisation) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=reseller,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(o=*ste*)" o sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
sstIsActive: TRUE
o: stepping stone GmbH

Customer Search

The customer search is a bit different than the reseller search, because we can have company and private customers.

Numerical value (integer) Customer Search

The following example shows you the numerical value (integer) search (uid search) with 400 (400*) as the search parameter and the attributes o (for the organisation) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=customers,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(|(uid=*400*)(sstExternalID=*400*)))" o sn givenName sstIsActive sstExternalID

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org
sstIsActive: TRUE
o: stepping stone GmbH
sstExternalID: 40013

dn: uid=4000083,ou=customers,dc=stoney-cloud,dc=org
sstIsActive: TRUE
o: DEVROOM

Alphanumerical value (non-integer) Customer Search

The following example shows you the alphanumerical value (non-integer) search with ste (*ste*) as the search parameter and the attributes o (for the organisation), givenName, sn (surname) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=customers,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(|(o=*ste*)(sn=*ste*)(givenName=*ste*)(sstExternalID=*400*)))" o givenName sn sstIsActive sstExternalID

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org
sstIsActive: TRUE
o: stepping stone GmbH
sstExternalID: 40013

Person (People) Search

Numerical value (integer) People Search

The following example shows you the numerical value (integer) search (uid search) with 400 (*400*) as the search parameter and the attributes o (for the organisation) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=people,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(uid=*400*))" o sn givenName sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org
givenName: Michael
sn: Eichenberger
sstIsActive: TRUE

dn: uid=4000064,ou=people,dc=stoney-cloud,dc=org
givenName: Christian
sn: Wittkowski
sstIsActive: TRUE

dn: uid=4000066,ou=people,dc=stoney-cloud,dc=org
givenName: Stijn
sn: Van Paesschen
sstIsActive: FALSE

dn: uid=4000069,ou=people,dc=stoney-cloud,dc=org
givenName: Jan
sn: Guldentops
sstIsActive: FALSE

dn: uid=4000080,ou=people,dc=stoney-cloud,dc=org
givenName: Tatiana
sn: Eichenberger
sstIsActive: TRUE

Alphanumerical value (non-integer) People Search

The following example shows you the alphanumerical value (non-integer) search with mic (*mic*) as the search parameter and the attributes o (for the organisation), givenName, sn (surname) and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=people,dc=stoney-cloud,dc=org" \
  -s one \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(|(o=*mic*)(sn=*mic*)(givenName=*mic*)))" o givenName sn sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org
givenName: Michael
sn: Eichenberger
sstIsActive: TRUE

Services Search

Each Service needs to be looked at separately, because the services have different dn's attributes.

Backup

Numerical value (integer) Backup Search

The following example shows you the numerical value (integer) search (uid search) with 372 (*372*) as the search parameter and the attributes uid (for the backup account uid), gecos (the backup name), sstQuota and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=backup,ou=services,dc=stoney-cloud,dc=org" \
  -s sub \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(uid=*372*))" uid gecos sstQuota sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=3723707,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
uid: 3723707
gecos: Michael Eichenberger
sstIsActive: TRUE
sstQuota: 10737418240

dn: uid=3723708,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
uid: 3723708
gecos: Christian Wittkowski
sstIsActive: TRUE
sstQuota: 10737418240

Alphanumerical value (non-integer) Backup Search

The following example shows you the alphanumerical value (non-integer) search with mic (*mic*) as the search parameter and the attributes uid (for the backup account uid), gecos (the backup name), sstQuota and sstIsActive as the return values (the size limit is set to 5):

ldapsearch -H ldaps://ldapm.stoney-cloud.org \
  -b "ou=backup,ou=services,dc=stoney-cloud,dc=org" \
  -s sub \
  -D "cn=Manager,dc=stoney-cloud,dc=org" \
  -z 5 \
  -W -x -LLL \
  "(&(sstBelongsToResellerUID=4000000)(|(cn=*mic*)(gecos=*mic*)(givenName=*mic*)))" uid gecos sstQuota sstIsActive

Do not forget to restrict the search according to the person who is currently logged in.

The result(s):

dn: uid=3723707,ou=accounts,ou=backup,ou=services,dc=stoney-cloud,dc=org
uid: 3723707
gecos: Michael Eichenberger
sstIsActive: TRUE
sstQuota: 10737418240

Mail

Numerical value (integer) Mail Search

Alphanumerical value (non-integer) Mail Search