Difference between revisions of "stoney core: Global Searches"

From stoney cloud
Jump to: navigation, search
[unchecked revision][unchecked revision]
(Created page with "= 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 chara...")
 
(Alphanumerical value (non-integer) Reseller Search)
 
(83 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 ==
 
After the user has entered the first three characters, we do a first search selection:
 
After the user has entered the first three characters, we do a first search selection:
Numerical value (integer): Select the UID Search.
+
* Numerical value (integer): Start a search for a '''uid''' (unique identifier)
Alphanumerical value (non-integer): Select the other searches (reseller, customer, person and services).
+
* 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):
 +
<pre>
 +
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
 +
</pre>
  
== UID Search ==
 
The following example shows you the UID search with 400 as the search parameter:
 
ldapsearch -H ldaps://ldapm.tombstone.ch -b "dc=foss-cloud,dc=org" -s sub -x -D "cn=Manager,dc=foss-cloud,dc=org" -W "(&(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001)(uid=400*))"
 
 
Do not forget to restrict the search according to the person who is currently logged in.
 
Do not forget to restrict the search according to the person who is currently logged in.
  
== Reseller Search ==
+
The result(s):
 +
<pre>
 +
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
 +
sstIsActive: TRUE
 +
o: stepping stone GmbH
 +
</pre>
 +
 
 +
Legend:
 +
<pre>
 +
-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.
 +
</pre>
 +
 
 +
=== 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):
 +
<pre>
 +
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
 +
</pre>
 +
 
 +
Do not forget to restrict the search according to the person who is currently logged in.
 +
 
 +
The result(s):
 +
<pre>
 +
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org
 +
sstIsActive: TRUE
 +
o: stepping stone GmbH
 +
</pre>
  
 
== Customer Search ==
 
== 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):
 +
<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)(|(uid=*400*)(sstExternalID=*400*)))" o sn givenName 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
 +
 +
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>
  
 
== 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 12: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