<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.stoney-cloud.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Administrator</id>
	<title>stoney-cloud.org - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stoney-cloud.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Administrator"/>
	<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/wiki/Special:Contributions/Administrator"/>
	<updated>2026-04-14T22:41:54Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=5472</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=5472"/>
		<updated>2024-06-10T09:36:28Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:OpenLDAP directory|OpenLDAP directory&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Infrastructure|Infrastructure&lt;br /&gt;
** Category:Self-Service Modules|Self-Service Modules&lt;br /&gt;
** Category:stoney cloud|stoney cloud&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_OpenLDAP_directory_data_organisation&amp;diff=5444</id>
		<title>stoney core: OpenLDAP directory data organisation</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_OpenLDAP_directory_data_organisation&amp;diff=5444"/>
		<updated>2024-02-02T14:54:29Z</updated>

		<summary type="html">&lt;p&gt;Administrator: /* Services */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Abstract =&lt;br /&gt;
This document describes the [[:Category:stoney core|stoney core]] relevant OpenLDAP directory data organisation.&lt;br /&gt;
&lt;br /&gt;
= Data Organisation =&lt;br /&gt;
The following chapters explain the data organisation of the stoney cloud OpenLDAP directory. This document describes the [[:Category:stoney core|stoney core]] relevant OpenLDAP directory data organisation.&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The subtree &#039;&#039;&#039;ou=administration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the administrative data.&lt;br /&gt;
&lt;br /&gt;
=== nextfreeuid ===&lt;br /&gt;
The entry &amp;lt;code&amp;gt;cn=nextfreeuid,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; stores the next free UID (Unique Identifier). The &amp;lt;code&amp;gt;&amp;lt;uid&amp;gt;&amp;lt;/code&amp;gt; is unique over the whole directory and is enforced through the directory and is incremented by one.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=nextfreeuid,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: sstNextFreeUID&lt;br /&gt;
cn: nextfreeuid&lt;br /&gt;
uid: 3724591&lt;br /&gt;
uidNumber: 3724591&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| ...&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The name of the leaf. &lt;br /&gt;
&lt;br /&gt;
For the next free uid, this is: &amp;lt;code&amp;gt;nextfreeuid&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| ...&lt;br /&gt;
| &amp;lt;center&amp;gt;...&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
Before using this attribute &amp;lt;code&amp;gt;uidNumber&amp;lt;/code&amp;gt;, you need to be sure, that your directory server actually supports atomic increments (LDAP Modify-Increment). See [https://www.iana.org/assignments/ldap-parameters/ldap-parameters.xhtml Lightweight Directory Access Protocol (LDAP) Parameters] and [https://tools.ietf.org/html/rfc4525 Lightweight Directory Access Protocol (LDAP) Modify-Increment Extension (RFC4525)].&lt;br /&gt;
&lt;br /&gt;
The following search should tell you, if you LDAP server supports the LDAP Modify-Increment Object Identifier Descriptor (OID 1.3.6.1.1.14):&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -H ldaps://ldapm.stepping-stone.ch -b &amp;quot;&amp;quot; -s base -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -W \* + | grep 1.3.6.1.1.14&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result should look as follows:&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
supportedFeatures: 1.3.6.1.1.14&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
-H ldapuri&lt;br /&gt;
-b searchbase&lt;br /&gt;
-D binddn&lt;br /&gt;
-W Prompt for simple authentication.&lt;br /&gt;
\* All user attributes are returned. &lt;br /&gt;
+  All operational attributes are returned.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Billing ===&lt;br /&gt;
The sub tree &amp;lt;code&amp;gt;ou=billing,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; stores all the billing relevant data. Each billable item (bundle, service or service item) is stored in this sub tree.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: billing&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following LDIF extract shows the billing schema for the product &amp;quot;Mail Account&amp;quot;.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=100001,ou=billing,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
description: Default pricing schema for the product Mail Account.&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstBillingPriceSchema&lt;br /&gt;
sstbaseprice: 0&lt;br /&gt;
sstbelongstouid: 1&lt;br /&gt;
sstbillingunit: Gigabyte&lt;br /&gt;
sstfreeunit: 0&lt;br /&gt;
sstpriceformula: sstPricePerUnit * sstQuota&lt;br /&gt;
sstpriceperunit: 4.00&lt;br /&gt;
sstproductname: Mail Account&lt;br /&gt;
uid: 100001&lt;br /&gt;
sstBelongsToUID: 1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The finale price is calculated with the help of the stored formula (sstPriceFormula). The customer price for a &amp;quot;Mail Account&amp;quot; with a 2 Gigabyte large mailbox (quota) is calculated as follows:&lt;br /&gt;
&#039;&#039;&#039;Price&#039;&#039;&#039; = sstPricePerUnit * sstQuota = 4.00 CHF/(Gigabyte * Month) * 2 Gigabyte = &#039;&#039;&#039;8 CHF/Month&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
All prices are stored in Swiss Francs (because the company stepping stone GmbH resides in Switzerland). You can decide about the default currency yourself. Once a month a billing run is executed, which scans the whole directory. The billing run is a currently &amp;quot;work in progress&amp;quot;. For more information, please contact our [mailto:accounting@stepping-stone.ch Accounting] departement.&lt;br /&gt;
&lt;br /&gt;
=== Group Mapping ===&lt;br /&gt;
Used for the group mapping from the given readable format to the local group UID format.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=group mapping,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
objectclass: sstLDAPSearchObjectClass&lt;br /&gt;
ou: group mapping&lt;br /&gt;
description: This entry describes, how to map a given group name to an UID in the local LDAP directory.&lt;br /&gt;
sstDisplayName: Group Mapping&lt;br /&gt;
sstLDAPBaseDn: ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
sstLDAPFilter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=%s)(sstBelongsToResellerUID=%sstBelongsToResellerUID)(sstBelongsToCustomerUID=%sstBelongsToCustomerUID))&lt;br /&gt;
sstLDAPStaticAttribute: uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Mapping for the Technology Group ====&lt;br /&gt;
The following search maps the group Technology belonging to the reseller with the sstBelongsToResellerUID 4000000 and the customer with the sstBelongsToCustomerUID 4000001 to the uid 4000014:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -w admin -H &amp;quot;ldap://10.1.130.14:389&amp;quot; -b &amp;quot;ou=groups,dc=stoney-cloud,dc=org&amp;quot; &amp;quot;(&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=Technology)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&amp;quot; uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
# extended LDIF&lt;br /&gt;
#&lt;br /&gt;
# LDAPv3&lt;br /&gt;
# base &amp;lt;ou=groups,dc=stoney-cloud,dc=org&amp;gt; with scope subtree&lt;br /&gt;
# filter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=Technology)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&lt;br /&gt;
# requesting: uid &lt;br /&gt;
#&lt;br /&gt;
# 4000014, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000014,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000014&lt;br /&gt;
&lt;br /&gt;
# search result&lt;br /&gt;
search: 2&lt;br /&gt;
result: 0 Success&lt;br /&gt;
&lt;br /&gt;
# numResponses: 2&lt;br /&gt;
# numEntries: 1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Mapping for all Groups ====&lt;br /&gt;
The following search lists all the existing Groups to belonging to the reseller with the sstBelongsToResellerUID 4000000 and the customer with the sstBelongsToCustomerUID 4000001 with the corresponding uids:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -w admin -H &amp;quot;ldap://10.1.130.14:389&amp;quot; -b &amp;quot;ou=groups,dc=stoney-cloud,dc=org&amp;quot; &amp;quot;(&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=*)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&amp;quot; uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
# extended LDIF&lt;br /&gt;
#&lt;br /&gt;
# LDAPv3&lt;br /&gt;
# base &amp;lt;ou=groups,dc=stoney-cloud,dc=org&amp;gt; with scope subtree&lt;br /&gt;
# filter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=*)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&lt;br /&gt;
# requesting: uid &lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# 4000014, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000014,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000014&lt;br /&gt;
&lt;br /&gt;
# 4000015, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000015,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000015&lt;br /&gt;
&lt;br /&gt;
# search result&lt;br /&gt;
search: 2&lt;br /&gt;
result: 0 Success&lt;br /&gt;
&lt;br /&gt;
# numResponses: 3&lt;br /&gt;
# numEntries: 2&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== People (Superuser) ===&lt;br /&gt;
The sub tree &amp;lt;code&amp;gt;ou=people,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; list all users, which have super user richts (users with the attribute &amp;lt;code&amp;gt;sstBelongsToUID=1&amp;lt;/code&amp;gt;). This entry uses the functionality of the the dynlist overlay. The attribut &#039;&#039;&#039;labeleduri&#039;&#039;&#039; contains a pre-defined search, which leads to a automatically created list.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: people&lt;br /&gt;
labeleduri: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToUID=1)&lt;br /&gt;
member: uid=1000000,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=1000003,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=1000004,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, the OpenLDAP has three people withe Superuser rights.&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=services,ou=administration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the service users. Each service and/or application has its own authentication user. The authentication user is used in the [[HTTP Basic authentication against OpenLDAP directory|OpenLDAP Directory Access Control Lists]] (ACLs) to allow or restrict access to the data.&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Notification user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-notification&lt;br /&gt;
** backup-notification&lt;br /&gt;
** cloud-notification&lt;br /&gt;
** lbaas-notification&lt;br /&gt;
** mail-notification&lt;br /&gt;
** storage-notification&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Service user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-&amp;lt;DAEMON&amp;gt;&lt;br /&gt;
** backup-pam-ldap&lt;br /&gt;
** cloud-openstack&lt;br /&gt;
** crm-suitecrm&lt;br /&gt;
** billing-cyclops&lt;br /&gt;
** cm-puppetboard (&#039;&#039;&#039;c&#039;&#039;&#039;onfiguration &#039;&#039;&#039;m&#039;&#039;&#039;anagement - Puppetboard Service)&lt;br /&gt;
** dms-alfresco (&#039;&#039;&#039;d&#039;&#039;&#039;ocument &#039;&#039;&#039;m&#039;&#039;&#039;anagement &#039;&#039;&#039;s&#039;&#039;&#039;ystem - Alfresco)&lt;br /&gt;
** iac-terraform (&#039;&#039;&#039;i&#039;&#039;&#039;nfrastructure &#039;&#039;&#039;a&#039;&#039;&#039;s &#039;&#039;&#039;c&#039;&#039;&#039;ode - Terraform)&lt;br /&gt;
** &amp;lt;s&amp;gt;lbaas-haproxy&amp;lt;/s&amp;gt;&lt;br /&gt;
** &amp;lt;s&amp;gt;lbaas-pam-ldap&amp;lt;/s&amp;gt;&lt;br /&gt;
** monitoring-zabbix&lt;br /&gt;
** phabricator&lt;br /&gt;
** pm-kanboard&lt;br /&gt;
** qos-rally&lt;br /&gt;
** storage-nextcloud&lt;br /&gt;
** storage-pam_ldap&lt;br /&gt;
** timetracking-kimai&lt;br /&gt;
** vault-cryptopus (A vault is a place where secrets are stored - in other words a password management system)&lt;br /&gt;
** vcs-gitlab (&#039;&#039;&#039;v&#039;&#039;&#039;ersion &#039;&#039;&#039;c&#039;&#039;&#039;ontrol &#039;&#039;&#039;s&#039;&#039;&#039;ystem - GitLab Service)&lt;br /&gt;
** virtualization-sc-brokerd&lt;br /&gt;
** wiki-int&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;API user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-api&lt;br /&gt;
** lbaas-api&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Provisioning user&#039;&#039;&#039;:&lt;br /&gt;
* prov-&amp;lt;SERVICE&amp;gt;-&amp;lt;TYPE&amp;gt;&lt;br /&gt;
** prov-backup-kvm&lt;br /&gt;
** prov-backup-zsnapshot&lt;br /&gt;
** prov-cloud-openstack&lt;br /&gt;
** prov-configuration-management-puppet&lt;br /&gt;
** &amp;lt;s&amp;gt;prov-lbaas-haproxy&amp;lt;/s&amp;gt;&lt;br /&gt;
** prov-mail-ox (&#039;&#039;&#039;O&#039;&#039;&#039;pen-&#039;&#039;&#039;X&#039;&#039;&#039;change)&lt;br /&gt;
** prov-monitoring-zabbix&lt;br /&gt;
** prov-storage-nextcloud&lt;br /&gt;
&lt;br /&gt;
==== backup Service User (stoney backup) ====&lt;br /&gt;
The following LDIF shows the backup service user entry:&lt;br /&gt;
 dn: cn=backup,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: dhcp&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: backup&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== dhcp (DHCP) Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the dhcp service user entry:&lt;br /&gt;
 dn: cn=dhcp,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: dhcp&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: dhcp&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== libvirtd Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the libvirtd service user entry:&lt;br /&gt;
 dn: cn=libvirtd,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: libvirtd&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: dhcp&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== prov-backup-kvm (Provisioning-Backup-KVM Daemon) Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the prov-backup-kvm service user entry:&lt;br /&gt;
 dn: cn=prov-backup-kvm,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 cn: prov-backup-kvm&lt;br /&gt;
 sn: prov-backup-kvm&lt;br /&gt;
 userPassword: &amp;lt;STONEY-CLOUD-PROV-BACKUP-KVM-PASSWORD&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== slapd-mirrormode Service User (stoney core) ====&lt;br /&gt;
The following LDIF shows the slapd-mirrormode service user entry:&lt;br /&gt;
 dn: cn=slapd-mirrormode,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: slapd-mirrormode&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: slapd-mirrormode&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== billing-cyclops Service User (stoney core) ====&lt;br /&gt;
The following LDIF shows the billing  service user entry:&lt;br /&gt;
 dn: cn=billing-cyclops,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: slapd-mirrormode&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: billing-cyclops&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Configuration management ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system relevant entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system relevant entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: configuration management&lt;br /&gt;
description: This sub tree contains the configuration management system relevant entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Configuration management - Regions ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system region entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system region entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: regions&lt;br /&gt;
description: This sub tree contains the configuration management system region entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Configuration management - Regions - Region example =====&lt;br /&gt;
The following LDIF example shows a typical region.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=duedingen_production,ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalRole&lt;br /&gt;
cn: duedingen_production&lt;br /&gt;
description: This region contains the two data centres located in Düdingen and is used for production systems.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The region used by the configuration management system Puppet via enc.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;cn: duedingen_production&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The human readable description of region.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: This region contains the two data centres located in Düdingen and is used for production systems.&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Configuration management - Roles ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system role entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system role entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: roles&lt;br /&gt;
description: This sub tree contains the configuration management system role entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Configuration management - Roles - Roles example =====&lt;br /&gt;
The following LDIF example shows a typical role.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=base,ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstConfigurationManagementRole&lt;br /&gt;
cn: base&lt;br /&gt;
displayName: Base&lt;br /&gt;
sstProfiles: - base&lt;br /&gt;
description: This is the base role used by all new servers managed by Puppet, but without a final role decided.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role name used by the configuration management system Puppet via enc.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;cn: base&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| displayName&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role display name (human readable).&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;displayName: Base&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstProfiles&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role definition (profile list) used by the configuration management system Puppet via enc. The profiles are listed, one per line. Multiple lines must be base64 endoded:&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstProfiles: - base&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sstProfiles:: LSBiYXNlCi0gY2VydGJvdAo=&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Encode:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt; EOF | base64&lt;br /&gt;
- base&lt;br /&gt;
- certbot&lt;br /&gt;
EOF&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Decode:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
echo LSBiYXNlCi0gY2VydGJvdAo= | base64 --decode&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The human readable description of region.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: This region contains the two data centres located in Düdingen and is used for production systems.&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Operating System ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the operating system choices for the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
 # This sub tree contains the operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: operating system&lt;br /&gt;
 description: This sub tree contains the operating system choices for the whole stoney cloud installation.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 # This sub tree contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000019&lt;br /&gt;
 sstDisplayName: Linux&lt;br /&gt;
 description: This sub tree contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Debian Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000020&lt;br /&gt;
 sstDisplayName: Debian&lt;br /&gt;
 description: This sub tree contains the Debian Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000021,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000021&lt;br /&gt;
 sstDisplayName: 5&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000022,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000022&lt;br /&gt;
 sstDisplayName: 6&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000023,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000023&lt;br /&gt;
 sstDisplayName: 7&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Fedora Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000024&lt;br /&gt;
 sstDisplayName: Fedora&lt;br /&gt;
 description: This sub tree contains the Fedora Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000025,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000025&lt;br /&gt;
 sstDisplayName: 12&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000026,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000026&lt;br /&gt;
 sstDisplayName: 13&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000027,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000027&lt;br /&gt;
 sstDisplayName: 14&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000028,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000028&lt;br /&gt;
 sstDisplayName: 15&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000029,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000029&lt;br /&gt;
 sstDisplayName: 16&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000030,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000030&lt;br /&gt;
 sstDisplayName: 17&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000031,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000031&lt;br /&gt;
 sstDisplayName: 18&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000032,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000032&lt;br /&gt;
 sstDisplayName: 19&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Gentoo Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000033&lt;br /&gt;
 sstDisplayName: Gentoo&lt;br /&gt;
 description: This sub tree contains the Gentoo Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000034&lt;br /&gt;
 sstDisplayName: 2012.0&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000035&lt;br /&gt;
 sstDisplayName: 2013.0&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 # This sub tree contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000036&lt;br /&gt;
 sstDisplayName: Windows&lt;br /&gt;
 description: This sub tree contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2008 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000037&lt;br /&gt;
 sstDisplayName: Server 2008&lt;br /&gt;
 description: This sub tree contains the Windows Server 2008 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000038,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000038&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000039,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000039&lt;br /&gt;
 sstDisplayName: Enterprise&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000040,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000040&lt;br /&gt;
 sstDisplayName: Foundation&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000041,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000041&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2008 R2 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000042&lt;br /&gt;
 sstDisplayName: Server 2008 R2&lt;br /&gt;
 description: This sub tree contains the Windows Server 2008 R2 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000043,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000043&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000044,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000044&lt;br /&gt;
 sstDisplayName: Enterprise&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000045,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000045&lt;br /&gt;
 sstDisplayName: Foundation&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000046,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000046&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000047,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000047&lt;br /&gt;
 sstDisplayName: Web&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2012 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000048&lt;br /&gt;
 sstDisplayName: Server 2012&lt;br /&gt;
 description: This sub tree contains the Windows Server 2012 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000049,uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000049&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000050,uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000050&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
=== Software Stack ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=software stack,ou=configuration,dc=foss-cloud,dc=org&#039;&#039;&#039; contains the software stack choices for the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
 # This sub tree contains the software stack choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: software stack&lt;br /&gt;
 description: This sub tree contains the software stack choices for the whole stoney cloud installation.&lt;br /&gt;
&lt;br /&gt;
 dn: ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: environments&lt;br /&gt;
 description: This sub tree contains the software stack environment choices for the whole stoney cloud installation.&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000054,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000054&lt;br /&gt;
 sstDisplayName: Test Environment&lt;br /&gt;
 description: This is the environment used for testing (pre-production).&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000055,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000055&lt;br /&gt;
 sstDisplayName: Development Environment&lt;br /&gt;
 description: This is the environment used for development (sandbox).&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000056,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000056&lt;br /&gt;
 sstDisplayName: Production Environment&lt;br /&gt;
 description: This is the environment used for production.&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
The multi-valued &#039;&#039;&#039;labeledURI&#039;&#039;&#039; attribute contains the &#039;&#039;&#039;operating system(s)&#039;&#039;&#039; for which a software stack works and therefore can be shown to the customer. The following three attributes tell us, who is allowed to access this leaf:&lt;br /&gt;
* &#039;&#039;&#039;sstAllowResellerUID&#039;&#039;&#039;: Stores the reseller UID(s) that are allowed access to this leaf. If set to 0 (zero), all resellers have access.&lt;br /&gt;
* &#039;&#039;&#039;sstAllowCustomerUID&#039;&#039;&#039;: Stores the customer UID(s) that are allowed access to this leaf. If set to 0 (zero), all customers belonging to the allowed resellers have access.&lt;br /&gt;
* &#039;&#039;&#039;sstAllowPersonUID&#039;&#039;&#039;: Stores the person UID(s) that are allowed access to this leaf. If set to 0 (zero), all people belonging to the allowed resellers and the allowed customers have access.&lt;br /&gt;
 dn: uid=4000051,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 objectclass: labeledURIObject&lt;br /&gt;
 uid: 4000051&lt;br /&gt;
 sstDisplayName: Django (Version 1)&lt;br /&gt;
 description: Django Python Web Framework Version 1.&lt;br /&gt;
 labeledURI: ldap://uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 labeledURI: ldap://uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 dn: uid=4000052,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 objectclass: labeledURIObject&lt;br /&gt;
 uid: 4000052&lt;br /&gt;
 sstDisplayName: Django (Version 2)&lt;br /&gt;
 description: Django Python Web Framework Version 2.&lt;br /&gt;
 labeledURI: ldap://uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 labeledURI: ldap://uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
== Customers ==&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the customers. Each customer has a unique uid, which is used for later reference.&lt;br /&gt;
&lt;br /&gt;
=== Customers - Customer ===&lt;br /&gt;
We have two kinds of customers:&lt;br /&gt;
* &#039;&#039;&#039;Company customer&#039;&#039;&#039;: This is the normal case, as we target companies.&lt;br /&gt;
* &#039;&#039;&#039;Private customer&#039;&#039;&#039;: A private customer does not have a company/organisation name.&lt;br /&gt;
&lt;br /&gt;
The following LDIF examples will show both cases where necessary. The first LDIF shows you the default &#039;&#039;&#039;company customer&#039;&#039;&#039; entry after a fresh stoney cloud installation. All relevant data belonging to this customer is stored below this dn.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomer&lt;br /&gt;
objectclass: sstRelationship&lt;br /&gt;
uid: 4000001&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstIsCompany: TRUE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following LDIF shows you the &#039;&#039;&#039;private customer&#039;&#039;&#039; entry. All relevant data belonging to this customer are stored below this dn.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomer&lt;br /&gt;
objectclass: sstRelationship&lt;br /&gt;
uid: 4000001&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
sstIsCompany: FALSE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the customer. For example: Customer Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsCompany&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set. Otherwise &amp;lt;code&amp;gt;givenName&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;surname&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;company customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info Customer Ltd. &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;private customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute Name&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Customer Name&lt;br /&gt;
| Customer name, for example: &#039;&#039;&#039;stepping stone GmbH&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Address&lt;br /&gt;
| Multi-lined address, for example: &#039;&#039;&#039;Neufeldstrasse 9&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Post Office Box&lt;br /&gt;
| Post Office Box, for example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| State or Province Name&lt;br /&gt;
| This pull down menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country&lt;br /&gt;
| Country code according to [http://www.iso.org/iso/home/standards/country_codes.htm ISO 3166-1]. The English short name (upper/lower case) is used for the interface and the corresponding ISO 3166-1-alpha-2 code (a two-letter code that represents a country name, recommended as the general purpose code) is used for the LDAP entry). For example: &#039;&#039;&#039;Switzerland&#039;&#039;&#039; in the interface and &#039;&#039;&#039;CH&#039;&#039;&#039; in the LDAP directory.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postal Code&lt;br /&gt;
| Postal Code without the country code, for example: &#039;&#039;&#039;3012&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Location&lt;br /&gt;
| Location, for example: &#039;&#039;&#039;Berne&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| Display language of the user according to [http://www.ietf.org/rfc/rfc1766.txt RFC 1766]. For example: &#039;&#039;&#039;de-CH&#039;&#039;&#039;. The following languages are currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* de-DE&lt;br /&gt;
* en-GB&lt;br /&gt;
* en-US&lt;br /&gt;
* fr-CH&lt;br /&gt;
* fr-FR&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;To:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Hans Muster &amp;lt;hans.muster@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and it MUST contain at least one &amp;quot;To:&amp;quot; billing mail address.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;CC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Info Customer Ltd. &amp;lt;info@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;CC:&amp;quot; billing mail addresses.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBcc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;BCC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;BCC:&amp;quot; billing mail addresses. Here we&#039;d expect the Accounting mail address of the service provider (for accountability reasons).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| Website&lt;br /&gt;
| Website URL according to [http://tools.ietf.org/html/rfc3986 RFC-3986]. For example: &#039;&#039;&#039;http://www.stepping-stone.ch&#039;&#039;&#039;/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the attribute &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; of the parent entry is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Shipping address (optional) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=shipping,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the shipping address and is optional (it is only needed, if the shipping address differs from the billing Address).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=shipping,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: shipping&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Billing ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=billing,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains billing relevant data. The following example shows a customer, receiving a monthly bill.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingCustomer&lt;br /&gt;
ou: billing&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
sstBillingCycle: 1&lt;br /&gt;
sstCurrency: CHF&lt;br /&gt;
sstPaymentMethod: invoice&lt;br /&gt;
sstDeliveryMethod: post&lt;br /&gt;
sstDiscount: 20&lt;br /&gt;
sstCancellationDate: 20181231&lt;br /&gt;
sstMailToUID: 4000002&lt;br /&gt;
sstMailCcUID: 4000064&lt;br /&gt;
sstMailBccUID: 4000066&lt;br /&gt;
sstMailBccUID: 4000069&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example shows a customer, which receives their bill via their reseller (no billing done by us):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000001,ou=customers,o=stepping-stone,c=ch&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingCustomer&lt;br /&gt;
ou: billing&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillable&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| All hierarchical levels must have &amp;lt;code&amp;gt;sstBillable: TRUE&amp;lt;/code&amp;gt; to actually have an invoice generated and sent. If the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; doesn&#039;t exist, the default is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;. This way, we are forced to set a reseller, customer or product manually to &amp;lt;code&amp;gt;sstBillable: FALSE&amp;lt;/code&amp;gt; if we want to avoid sending them an invoice.&lt;br /&gt;
|-&lt;br /&gt;
| sstBillingCycle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Billing cycle in months. This attribute &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is only checked (evaluated), if the reseller the customer belongs to, has &amp;lt;code&amp;gt;sstResellerBill&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;FALSE&amp;lt;/code&amp;gt; (as is the case for the reseller stepping stone GmbH). Possible values:&lt;br /&gt;
* 1: Monthly invoice.&lt;br /&gt;
* 3: Quarterly invoice.&lt;br /&gt;
* 6: Semi-annually invoice. &lt;br /&gt;
* &#039;&#039;&#039;12&#039;&#039;&#039;: Yearly invoice (this is the default billing period if no &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCurrency&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Three-letter currency code according to [https://en.wikipedia.org/wiki/ISO_4217 ISO 4217]. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;CHF&#039;&#039;&#039;: Swiss franc (this is the default currency if no &amp;lt;code&amp;gt;sstCurrency&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* EUR: Euro&lt;br /&gt;
* GBP: Pound sterling&lt;br /&gt;
* USD: United States dollar&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstPaymentMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Payment method of the invoice. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;invoice&#039;&#039;&#039;: Classic invoice, sent according to the delivery method defined in &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; (this is the default payment method if no &amp;lt;code&amp;gt;sstPaymentMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* postcard: Electronic invoice via PostFinance.&lt;br /&gt;
* creditcard: Credit card payment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDeliveryMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Delivery method of invoices or access data. Possible values are:&lt;br /&gt;
* email: The invoice or access data is sent via email to the recipient.&lt;br /&gt;
* &#039;&#039;&#039;post&#039;&#039;&#039;: The invoice or access data is sent via snail mail to the recipient (this is the default delivery method if no &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDiscount&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| An optional customer discount (an integer value between 0 and 100). Default is &#039;&#039;&#039;0&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCancellationDate&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The cancellation date of a reseller, customer or service in the form of [YYYY][MM][DD] (ISO 8601). For example: &#039;&#039;&#039;20181231&#039;&#039;&#039;. The attribute &amp;lt;code&amp;gt;sstCancellationDate&amp;lt;/code&amp;gt; is used in a logical AND combination with &amp;lt;code&amp;gt;sstIsActive&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Even though this attribute is multi-valued, we expect on recipient only. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via To. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCcUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailCcUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via CC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000064&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBccUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailBccUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via BCC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000066&#039;&#039;&#039; or &#039;&#039;&#039;4000069&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: The attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is mandatory, if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: As the default of the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, it&#039;s not really mandatory. For better readability, please always add the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Employees ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=employees,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the employees belonging to the reseller &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (all the employees with the the attribute sstBelongsToEmployeeUID=4000001). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this customer. The number of employees is always the same or smaller than the number of people belonging to a customer (they are a subset).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=employees,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstEmployeeOfUID=4000001)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; has one employee (with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - People ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=people,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the all the people belonging to the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (all the people, including the employees, with the the attribute sstBelongsToCustomerUID=4000001). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of people is always the same or larger than the number of employees belonging to a reseller.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: people&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToCustomerUID=4000001)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000064,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000066,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000069,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, four people the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (including the employee with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
=== Customers - Customer (LEGACY) ===&lt;br /&gt;
We have two kinds of customers:&lt;br /&gt;
* &#039;&#039;&#039;Company customer&#039;&#039;&#039;: This is the normal case, as we target companies.&lt;br /&gt;
* &#039;&#039;&#039;Private customer&#039;&#039;&#039;: A private customer does not have a company/organisation name.&lt;br /&gt;
&lt;br /&gt;
The following LDIF examples will show both cases where necessary. The first LDIF shows you the default &#039;&#039;&#039;company customer&#039;&#039;&#039; entry after a fresh stoney cloud installation. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomerCompany&lt;br /&gt;
uid: 4000001&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: Customer Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
The following LDIF shows you the &#039;&#039;&#039;private customer&#039;&#039;&#039; entry. All relevant data belonging to this reseller are stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomerPerson&lt;br /&gt;
uid: 4000001&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer (LEGACY) - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;company customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressCompany&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Company name, example: stepping stone GmbH&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding [https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ISO 3166-1-alpha-2] code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;private customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressPerson&lt;br /&gt;
ou: address&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding ISO 3166-1-alpha-2 code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
== Groups ==&lt;br /&gt;
&lt;br /&gt;
== People ==&lt;br /&gt;
The sub tree which contains all the people. Each person has a unique identifier (uid):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: people&lt;br /&gt;
description: The sub tree which contains all the people.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== People - Person ===&lt;br /&gt;
Each person hat its own leaf with a unique identifier (uid). The following LDIF shows you a typical &#039;&#039;&#039;person&#039;&#039;&#039; entry. All relevant data belonging to this person is stored below this leaf.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstPerson&lt;br /&gt;
uid: 4000002&lt;br /&gt;
sstGender: m&lt;br /&gt;
sstTitle: CEO&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
displayName: Name Surname&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
userPassword: {SSHA}UgrBHVhKxFQInWWpzf1ddgEVmSg5vKUm&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
cn: admin&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstTimeZoneOffset: UTC+01&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstEmployeeOfUID: 4000000&lt;br /&gt;
sstEmployeeOfUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The person &#039;&#039;&#039;Name Surname&#039;&#039;&#039; (with the uid=4000002) belongs to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (with sstBelongsToResellerUID=4000000) and is an employee of the same company (sstEmployeeOfUID=4000000). The person also belongs the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (with sstBelongsToCustomerUID=4000001) and is an employee of the same company (sstEmployeeOfUID=4000001).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:200px; border-top:0.002cm solid #000000;border-bottom:0.002cm solid #000000;border-left:0.002cm solid #000000;border-right:none;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;AttributeType&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;User alterable&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:600px; border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| UID&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Unique Identifier. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstTitle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Title&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The title of a person as a [http://en.wikipedia.org/wiki/UTF-8 UTF-8]] formatted string. For example: &#039;&#039;&#039;CEO&#039;&#039;&#039; or &#039;&#039;&#039;Technician&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| displayName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display name&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display name, for example: &#039;&#039;&#039; Hans Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766: &amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[http://www.loc.gov/standards/iso639-2/php/code_list.php ISO 639-1 Code]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt;-&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[http://www.iso.org/iso/english_country_names_and_code_elements ISO 3166-1-alpha-2 code]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; . For example: &amp;lt;code&amp;gt;de-CH&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| userPassword&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Password&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| SSHA user password. {SSHA} is a [http://www.ietf.org/rfc/rfc2307.txt RFC 2307] password scheme which uses the SHA1 secure hash algorithm. For example: &#039;&#039;&#039;{SSHA}h+qbh3pFWrZxmz02H5tXhOr+0/wrmHFF&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The users mail address, for example: &#039;&#039;&#039;hans.muster@example.com&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Common name of the user, for example: &#039;&#039;&#039;sst-mei&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstTimeZoneOffset&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Time zone as an offset from UTC. For example: &#039;&#039;&#039;UTC+01&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Is the entry active? Either &#039;&#039;&#039;true&#039;&#039;&#039; (yes) or &#039;&#039;&#039;false&#039;&#039;&#039; (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| If this value is set to &#039;&#039;&#039;1&#039;&#039;&#039;, the user is the super user of the whole stoney cloud installation. Therefore this user can add and remove resellers. Use with caution.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the person belongs to. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000000&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the person belongs to. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000001&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstEmployeeOfUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Employee of&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the UID(s) the person is an employee of. The UID(s) can belong to one or more resellers or also to one or more customers. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000001&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| External ID&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database. For example: &#039;&#039;&#039;234567&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Mandatory, if the person belongs to customer that has subscribed a [https://wwww.stoney-storage.com/ stoney storage] service.&lt;br /&gt;
&lt;br /&gt;
==== People - Person - Session tokens ====&lt;br /&gt;
Using session tokens, when the user logs out, the client sends a logout request to the server. The session token is then removed from LDAP by the server and the client discards the session token.&lt;br /&gt;
&lt;br /&gt;
Special cases:&lt;br /&gt;
* If the user&#039;s password is changed, all session tokens must be removed from LDAP in order to force the user to re-login.&lt;br /&gt;
* If any attributes are changed which control the user&#039;s affiliation (reseller, company, etc), all session tokens must be removed from LDAP in order to force the user to re-login.&amp;lt;br /&amp;gt;Specific attributes:&lt;br /&gt;
** sstBelongsToResellerUID&lt;br /&gt;
** sstBelongsToCustomerUID&lt;br /&gt;
** sstEmployeeOfUID&lt;br /&gt;
** sstEmployeeOfUID&lt;br /&gt;
&lt;br /&gt;
In our case, we store the session tokens in a leaf beneath the person (as these tokens are personal).&lt;br /&gt;
&lt;br /&gt;
===== People - Person - Session tokens example =====&lt;br /&gt;
Below each person entry, we have a tokens sub tree, which stores the session tokens:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=tokens,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: tokens&lt;br /&gt;
description: The sub tree for the session tokens of the person with the uid &#039;4000002&#039;.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Objectclass&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ou&lt;br /&gt;
| organizationalUnit&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The sub tree containing all the session tokens.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;ou: tokens&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalUnit&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. As this sub tree is created by the stoney API, we don&#039;t really need a human readable description.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: The sub tree for the session tokens of the person with the uid &#039;4000002&#039;.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
Each session token receives its own child-entry to store additional meta data, such as the token&#039;s create date, last utilisation date, ... In the example below, the session token &amp;lt;code&amp;gt;sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&amp;lt;/code&amp;gt; was created on the 13th of April 2021 at 08:10:27 UTC (&amp;lt;code&amp;gt;sstCreationDate: 20210413T081027Z&amp;lt;/code&amp;gt;) and two clients have used this token (the first with an IPv4 address, the second with an IPv6 address):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstToken=2e211493-41e6-4c74-9431-b5d990b177a4,ou=tokens,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstTokenObjectClass&lt;br /&gt;
sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&lt;br /&gt;
description: The sub tree for the JSON Web Token with the id &#039;2e211493-41e6-4c74-9431-b5d990b177a4&#039;.&lt;br /&gt;
sstCreationDate: 20210413T081027Z&lt;br /&gt;
sstClient: 20210413T081027Z: 194.176.109.13 Mozilla/5.0 (X11; Linux x86_64; rv:85.0) Gecko/20100101 Firefox/85.0&lt;br /&gt;
sstClient: 20210413T132805Z: 2001:0db8:85a3:0000:0000:8a2e:0370:7334 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4456.0 Safari/537.36 Edg/91.0.845.2&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API will make sure, that the amount of registered remote IP addresses and requesting User-Agents doesn&#039;t exceed a certain configurable limit (for example: 2). If the limit is exceeded, the session will be invalidated.&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Objectclass&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstToken&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The sub tree containing all the information of a session (creation date, access date, IPv4 or IPv6 address and the clients user agent). The session token has the form of a UUID (Universally Unique Identifier)..&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. As this sub tree is created by the stoney API, we don&#039;t really need a human readable description.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: The sub tree for the JSON Web Token with the id &#039;2e211493-41e6-4c74-9431-b5d990b177a4&#039;.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCreationDate&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The session token creation time (UTC) in the form of &amp;lt;code&amp;gt;[YYYY][MM][DD]T[hh][mm][ss]Z&amp;lt;/code&amp;gt; according to the [http://en.wikipedia.org/wiki/ISO_8601 ISO 8601] definition.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstCreationDate: 20210413T081027Z&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstClient&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The multi-valued attribute containing client information. This attribute contains the following information:&lt;br /&gt;
* The access time (UTC) in the form of &amp;lt;code&amp;gt;[YYYY][MM][DD]T[hh][mm][ss]Z&amp;lt;/code&amp;gt; according to the [http://en.wikipedia.org/wiki/ISO_8601 ISO 8601] definition.&lt;br /&gt;
* The IPv4 or IPv6 address, from which the client has accessed the stoney API.&lt;br /&gt;
* The user agent of the client.&lt;br /&gt;
&lt;br /&gt;
This information is separated by spaces: &amp;lt;code&amp;gt;sstClient: [YYYY][MM][DD]T[hh][mm][ss]Z&amp;quot; &amp;quot;IPv4 or IPv6&amp;quot; &amp;quot;User-Agent&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstClient: 20210413T081027Z 194.176.109.13 Mozilla/5.0 (X11; Linux x86_64; rv:85.0) Gecko/20100101 Firefox/85.0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Please be aware, that the maximal length of a sstClient string is restricted to 256 characters.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== People - Person - Roles (LEGACY) ====&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=Monitoring Administrator,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: Monitoring Administrator&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=User,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: User&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=Virtualization Administrator,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: Virtualization Administrator&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Reseller ==&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the resellers. Each reseller has a unique uid, which is used for later reference.&lt;br /&gt;
&lt;br /&gt;
=== Reseller - Reseller ===&lt;br /&gt;
The following LDIF shows a typical reseller entry. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstReseller&lt;br /&gt;
uid: 4000000&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstIsCompany: TRUE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039;. A reseller must be a company (&amp;lt;code&amp;gt;sstIsCompany: TRUE&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsCompany&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry a company? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info Reseller Ltd. &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute Name&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Reseller Name&lt;br /&gt;
| Reseller name, for example: &#039;&#039;&#039;stepping stone GmbH&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Address&lt;br /&gt;
| Multi-lined address, for example: &#039;&#039;&#039;Neufeldstrasse 9&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Post Office Box&lt;br /&gt;
| Post Office Box, for example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| State or Province Name&lt;br /&gt;
| This pull down menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country&lt;br /&gt;
| Country code according to [http://www.iso.org/iso/home/standards/country_codes.htm ISO 3166-1]. The English short name (upper/lower case) is used for the interface and the corresponding ISO 3166-1-alpha-2 code (a two-letter code that represents a country name, recommended as the general purpose code) is used for the LDAP entry). For example: &#039;&#039;&#039;Switzerland&#039;&#039;&#039; in the interface and &#039;&#039;&#039;CH&#039;&#039;&#039; in the LDAP directory.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postal Code&lt;br /&gt;
| Postal Code without the country code, for example: &#039;&#039;&#039;3012&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Location&lt;br /&gt;
| Location, for example: &#039;&#039;&#039;Berne&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| Display language of the user according to [http://www.ietf.org/rfc/rfc1766.txt RFC 1766]. For example: &#039;&#039;&#039;de-CH&#039;&#039;&#039;. The following languages are currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* de-DE&lt;br /&gt;
* en-GB&lt;br /&gt;
* en-US&lt;br /&gt;
* fr-CH&lt;br /&gt;
* fr-FR&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The resellers &amp;quot;To:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Hans Muster &amp;lt;hans.muster@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and it MUST contain at least one &amp;quot;To:&amp;quot; billing mail address.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The resellers &amp;quot;CC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Info Reseller Ltd. &amp;lt;info@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;CC:&amp;quot; billing mail addresses.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBcc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;BCC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;BCC:&amp;quot; billing mail addresses. Here we&#039;d expect the Accounting mail address of the service provider (for accountability reasons).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| Website&lt;br /&gt;
| Website URL according to [http://tools.ietf.org/html/rfc3986 RFC-3986]. For example: &#039;&#039;&#039;http://www.stepping-stone.ch&#039;&#039;&#039;/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the attribute &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; of the parent entry is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Shipping address (optional) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=shipping,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the shipping address and is optional (it is only needed, if the shipping address differs from the billing Address).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=shipping,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: shipping&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Billing ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=billing,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains billing relevant data. The following example shows a reseller, receiving a monthly bill.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingReseller&lt;br /&gt;
ou: billing&lt;br /&gt;
sstResellerBill: TRUE&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
sstBillingCycle: 1&lt;br /&gt;
sstCurrency: CHF&lt;br /&gt;
sstPaymentMethod: invoice&lt;br /&gt;
sstDeliveryMethod: post&lt;br /&gt;
sstDiscount: 32&lt;br /&gt;
sstCancellationDate: 20181231&lt;br /&gt;
sstMailToUID: 4000002&lt;br /&gt;
sstMailCcUID: 4000064&lt;br /&gt;
sstMailBccUID: 4000066&lt;br /&gt;
sstMailBccUID: 4000069&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example shows a reseller, where their customers receive a bill directly:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000000,ou=reseller,o=stepping-stone,c=ch&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingReseller&lt;br /&gt;
ou: billing&lt;br /&gt;
sstResellerBill: FALSE &lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstResellerBill&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Should the the reseller receive a consolidated invoice for all their customers? This can be either &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;FALSE&amp;lt;/code&amp;gt;. The default value is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, meaning that the resellers receives a consolidated invoice for all their customers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillable&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| All hierarchical levels must have &amp;lt;code&amp;gt;sstBillable: TRUE&amp;lt;/code&amp;gt; to actually have an invoice generated and sent. If the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; doesn&#039;t exist, the default is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;. This way, we are forced to set a reseller, customer or product manually to &amp;lt;code&amp;gt;sstBillable: FALSE&amp;lt;/code&amp;gt; if we want to avoid sending them an invoice.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillingCycle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Billing cycle in months. This attribute &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is only checked (evaluated), if the reseller has &amp;lt;code&amp;gt;sstResellerBill&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt; (as is the case for the resellers except for stepping stone GmbH). Possible values:&lt;br /&gt;
* 1: Monthly invoice (this is the default billing period if no &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* 3: Quarterly invoice.&lt;br /&gt;
* 6: Semi-annually invoice. &lt;br /&gt;
* 12: Yearly invoice.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCurrency&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Three-letter currency code according to [https://en.wikipedia.org/wiki/ISO_4217 ISO 4217]. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;CHF&#039;&#039;&#039;: Swiss franc (this is the default currency if no &amp;lt;code&amp;gt;sstCurrency&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* EUR: Euro&lt;br /&gt;
* GBP: Pound sterling&lt;br /&gt;
* USD: United States dollar&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstPaymentMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Payment method of the invoice. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;invoice&#039;&#039;&#039;: Classic invoice, sent according to the delivery method defined in &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; (this is the default payment method if no &amp;lt;code&amp;gt;sstPaymentMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* postcard: Electronic invoice via PostFinance.&lt;br /&gt;
* creditcard: Credit card payment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDeliveryMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Delivery method of invoices or access data. Possible values are:&lt;br /&gt;
* email: The invoice or access data is sent via email to the recipient.&lt;br /&gt;
* &#039;&#039;&#039;post&#039;&#039;&#039;: The invoice or access data is sent via snail mail to the recipient (this is the default delivery method if no &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDiscount&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| An optional customer discount (an integer value between 0 and 100). Default is &#039;&#039;&#039;0&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCancellationDate&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The cancellation date of a reseller, customer or service in the form of [YYYY][MM][DD] (ISO 8601). For example: &#039;&#039;&#039;20181231&#039;&#039;&#039;. The attribute &amp;lt;code&amp;gt;sstCancellationDate&amp;lt;/code&amp;gt; is used in a logical AND combination with &amp;lt;code&amp;gt;sstIsActive&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Even though this attribute is multi-valued, we expect on recipient only. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via To. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCcUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailCcUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via CC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000064&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBccUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailBccUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via BCC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000066&#039;&#039;&#039; or &#039;&#039;&#039;4000069&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: The attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is mandatory, if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: As the default of the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, it&#039;s not really mandatory. For better readability, please always add the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Customers ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=customers,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the customers belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the customers with the the attribute sstBelongsToResellerUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of customers belonging to this reseller.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=customers,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: customers&lt;br /&gt;
labeledURI: ldap:///ou=customers,dc=stoney-cloud,dc=org??one?(sstBelongsToResellerUID=4000000)&lt;br /&gt;
member: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; has one customer (with the uid=4000001).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Employees ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=employees,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the employees belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the employees with the the attribute sstBelongsToEmployeeUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of employees is always the same or smaller than the number of people belonging to a reseller (they are a subset).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=employees,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstEmployeeOfUID=4000000)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; has one employee (with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - People ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=people,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the all the people belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the people, including the employees, with the the attribute sstBelongsToResellerUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of people is always the same or larger than the number of employees belonging to a reseller.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToResellerUID=4000000)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000064,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000066,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000069,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, four people the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (including the employee with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
=== Reseller - Reseller (LEGACY) ===&lt;br /&gt;
The following LDIF shows you the default reseller entry after a fresh stoney cloud installation. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstReseller&lt;br /&gt;
uid: 4000000&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: Reseller Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller - Reseller - Billing address (LEGACY) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressCompany&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Company name, example: stepping stone GmbH&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding ISO 3166-1-alpha-2 code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
[[Category:stoney core]][[Category:OpenLDAP directory]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_OpenLDAP_directory_data_organisation&amp;diff=5443</id>
		<title>stoney core: OpenLDAP directory data organisation</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_OpenLDAP_directory_data_organisation&amp;diff=5443"/>
		<updated>2024-02-02T14:54:16Z</updated>

		<summary type="html">&lt;p&gt;Administrator: /* Services */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Abstract =&lt;br /&gt;
This document describes the [[:Category:stoney core|stoney core]] relevant OpenLDAP directory data organisation.&lt;br /&gt;
&lt;br /&gt;
= Data Organisation =&lt;br /&gt;
The following chapters explain the data organisation of the stoney cloud OpenLDAP directory. This document describes the [[:Category:stoney core|stoney core]] relevant OpenLDAP directory data organisation.&lt;br /&gt;
&lt;br /&gt;
== Administration ==&lt;br /&gt;
The subtree &#039;&#039;&#039;ou=administration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the administrative data.&lt;br /&gt;
&lt;br /&gt;
=== nextfreeuid ===&lt;br /&gt;
The entry &amp;lt;code&amp;gt;cn=nextfreeuid,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; stores the next free UID (Unique Identifier). The &amp;lt;code&amp;gt;&amp;lt;uid&amp;gt;&amp;lt;/code&amp;gt; is unique over the whole directory and is enforced through the directory and is incremented by one.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=nextfreeuid,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: sstNextFreeUID&lt;br /&gt;
cn: nextfreeuid&lt;br /&gt;
uid: 3724591&lt;br /&gt;
uidNumber: 3724591&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| ...&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The name of the leaf. &lt;br /&gt;
&lt;br /&gt;
For the next free uid, this is: &amp;lt;code&amp;gt;nextfreeuid&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| ...&lt;br /&gt;
| &amp;lt;center&amp;gt;...&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
Before using this attribute &amp;lt;code&amp;gt;uidNumber&amp;lt;/code&amp;gt;, you need to be sure, that your directory server actually supports atomic increments (LDAP Modify-Increment). See [https://www.iana.org/assignments/ldap-parameters/ldap-parameters.xhtml Lightweight Directory Access Protocol (LDAP) Parameters] and [https://tools.ietf.org/html/rfc4525 Lightweight Directory Access Protocol (LDAP) Modify-Increment Extension (RFC4525)].&lt;br /&gt;
&lt;br /&gt;
The following search should tell you, if you LDAP server supports the LDAP Modify-Increment Object Identifier Descriptor (OID 1.3.6.1.1.14):&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -H ldaps://ldapm.stepping-stone.ch -b &amp;quot;&amp;quot; -s base -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -W \* + | grep 1.3.6.1.1.14&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result should look as follows:&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
supportedFeatures: 1.3.6.1.1.14&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Options:&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
-H ldapuri&lt;br /&gt;
-b searchbase&lt;br /&gt;
-D binddn&lt;br /&gt;
-W Prompt for simple authentication.&lt;br /&gt;
\* All user attributes are returned. &lt;br /&gt;
+  All operational attributes are returned.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Billing ===&lt;br /&gt;
The sub tree &amp;lt;code&amp;gt;ou=billing,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; stores all the billing relevant data. Each billable item (bundle, service or service item) is stored in this sub tree.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: billing&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following LDIF extract shows the billing schema for the product &amp;quot;Mail Account&amp;quot;.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=100001,ou=billing,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
description: Default pricing schema for the product Mail Account.&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstBillingPriceSchema&lt;br /&gt;
sstbaseprice: 0&lt;br /&gt;
sstbelongstouid: 1&lt;br /&gt;
sstbillingunit: Gigabyte&lt;br /&gt;
sstfreeunit: 0&lt;br /&gt;
sstpriceformula: sstPricePerUnit * sstQuota&lt;br /&gt;
sstpriceperunit: 4.00&lt;br /&gt;
sstproductname: Mail Account&lt;br /&gt;
uid: 100001&lt;br /&gt;
sstBelongsToUID: 1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The finale price is calculated with the help of the stored formula (sstPriceFormula). The customer price for a &amp;quot;Mail Account&amp;quot; with a 2 Gigabyte large mailbox (quota) is calculated as follows:&lt;br /&gt;
&#039;&#039;&#039;Price&#039;&#039;&#039; = sstPricePerUnit * sstQuota = 4.00 CHF/(Gigabyte * Month) * 2 Gigabyte = &#039;&#039;&#039;8 CHF/Month&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
All prices are stored in Swiss Francs (because the company stepping stone GmbH resides in Switzerland). You can decide about the default currency yourself. Once a month a billing run is executed, which scans the whole directory. The billing run is a currently &amp;quot;work in progress&amp;quot;. For more information, please contact our [mailto:accounting@stepping-stone.ch Accounting] departement.&lt;br /&gt;
&lt;br /&gt;
=== Group Mapping ===&lt;br /&gt;
Used for the group mapping from the given readable format to the local group UID format.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=group mapping,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
objectclass: sstLDAPSearchObjectClass&lt;br /&gt;
ou: group mapping&lt;br /&gt;
description: This entry describes, how to map a given group name to an UID in the local LDAP directory.&lt;br /&gt;
sstDisplayName: Group Mapping&lt;br /&gt;
sstLDAPBaseDn: ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
sstLDAPFilter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=%s)(sstBelongsToResellerUID=%sstBelongsToResellerUID)(sstBelongsToCustomerUID=%sstBelongsToCustomerUID))&lt;br /&gt;
sstLDAPStaticAttribute: uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Mapping for the Technology Group ====&lt;br /&gt;
The following search maps the group Technology belonging to the reseller with the sstBelongsToResellerUID 4000000 and the customer with the sstBelongsToCustomerUID 4000001 to the uid 4000014:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -w admin -H &amp;quot;ldap://10.1.130.14:389&amp;quot; -b &amp;quot;ou=groups,dc=stoney-cloud,dc=org&amp;quot; &amp;quot;(&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=Technology)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&amp;quot; uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
# extended LDIF&lt;br /&gt;
#&lt;br /&gt;
# LDAPv3&lt;br /&gt;
# base &amp;lt;ou=groups,dc=stoney-cloud,dc=org&amp;gt; with scope subtree&lt;br /&gt;
# filter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=Technology)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&lt;br /&gt;
# requesting: uid &lt;br /&gt;
#&lt;br /&gt;
# 4000014, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000014,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000014&lt;br /&gt;
&lt;br /&gt;
# search result&lt;br /&gt;
search: 2&lt;br /&gt;
result: 0 Success&lt;br /&gt;
&lt;br /&gt;
# numResponses: 2&lt;br /&gt;
# numEntries: 1&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Example Mapping for all Groups ====&lt;br /&gt;
The following search lists all the existing Groups to belonging to the reseller with the sstBelongsToResellerUID 4000000 and the customer with the sstBelongsToCustomerUID 4000001 with the corresponding uids:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
ldapsearch -D &amp;quot;cn=Manager,dc=stoney-cloud,dc=org&amp;quot; -w admin -H &amp;quot;ldap://10.1.130.14:389&amp;quot; -b &amp;quot;ou=groups,dc=stoney-cloud,dc=org&amp;quot; &amp;quot;(&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=*)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&amp;quot; uid&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;text&#039;&amp;gt;&lt;br /&gt;
# extended LDIF&lt;br /&gt;
#&lt;br /&gt;
# LDAPv3&lt;br /&gt;
# base &amp;lt;ou=groups,dc=stoney-cloud,dc=org&amp;gt; with scope subtree&lt;br /&gt;
# filter: (&amp;amp;(objectClass=sstGroupObjectClass)(sstGroupName=*)(sstBelongsToResellerUID=4000000)(sstBelongsToCustomerUID=4000001))&lt;br /&gt;
# requesting: uid &lt;br /&gt;
#&lt;br /&gt;
&lt;br /&gt;
# 4000014, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000014,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000014&lt;br /&gt;
&lt;br /&gt;
# 4000015, groups, stoney-cloud.org&lt;br /&gt;
dn: uid=4000015,ou=groups,dc=stoney-cloud,dc=org&lt;br /&gt;
uid: 4000015&lt;br /&gt;
&lt;br /&gt;
# search result&lt;br /&gt;
search: 2&lt;br /&gt;
result: 0 Success&lt;br /&gt;
&lt;br /&gt;
# numResponses: 3&lt;br /&gt;
# numEntries: 2&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== People (Superuser) ===&lt;br /&gt;
The sub tree &amp;lt;code&amp;gt;ou=people,ou=administration,dc=stoney-cloud,dc=org&amp;lt;/code&amp;gt; list all users, which have super user richts (users with the attribute &amp;lt;code&amp;gt;sstBelongsToUID=1&amp;lt;/code&amp;gt;). This entry uses the functionality of the the dynlist overlay. The attribut &#039;&#039;&#039;labeleduri&#039;&#039;&#039; contains a pre-defined search, which leads to a automatically created list.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: people&lt;br /&gt;
labeleduri: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToUID=1)&lt;br /&gt;
member: uid=1000000,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=1000003,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=1000004,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, the OpenLDAP has three people withe Superuser rights.&lt;br /&gt;
&lt;br /&gt;
=== Services ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=services,ou=administration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the service users. Each service and/or application has its own authentication user. The authentication user is used in the [[HTTP Basic authentication against OpenLDAP directory|OpenLDAP Directory Access Control Lists]] (ACLs) to allow or restrict access to the data.&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Notification user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-notification&lt;br /&gt;
** backup-notification&lt;br /&gt;
** cloud-notification&lt;br /&gt;
** lbaas-notification&lt;br /&gt;
** mail-notification&lt;br /&gt;
** storage-notification&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Service user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-&amp;lt;DAEMON&amp;gt;&lt;br /&gt;
** backup-pam-ldap&lt;br /&gt;
** cloud-openstack&lt;br /&gt;
** cm-suitecrm&lt;br /&gt;
** billing-cyclops&lt;br /&gt;
** cm-puppetboard (&#039;&#039;&#039;c&#039;&#039;&#039;onfiguration &#039;&#039;&#039;m&#039;&#039;&#039;anagement - Puppetboard Service)&lt;br /&gt;
** dms-alfresco (&#039;&#039;&#039;d&#039;&#039;&#039;ocument &#039;&#039;&#039;m&#039;&#039;&#039;anagement &#039;&#039;&#039;s&#039;&#039;&#039;ystem - Alfresco)&lt;br /&gt;
** iac-terraform (&#039;&#039;&#039;i&#039;&#039;&#039;nfrastructure &#039;&#039;&#039;a&#039;&#039;&#039;s &#039;&#039;&#039;c&#039;&#039;&#039;ode - Terraform)&lt;br /&gt;
** &amp;lt;s&amp;gt;lbaas-haproxy&amp;lt;/s&amp;gt;&lt;br /&gt;
** &amp;lt;s&amp;gt;lbaas-pam-ldap&amp;lt;/s&amp;gt;&lt;br /&gt;
** monitoring-zabbix&lt;br /&gt;
** phabricator&lt;br /&gt;
** pm-kanboard&lt;br /&gt;
** qos-rally&lt;br /&gt;
** storage-nextcloud&lt;br /&gt;
** storage-pam_ldap&lt;br /&gt;
** timetracking-kimai&lt;br /&gt;
** vault-cryptopus (A vault is a place where secrets are stored - in other words a password management system)&lt;br /&gt;
** vcs-gitlab (&#039;&#039;&#039;v&#039;&#039;&#039;ersion &#039;&#039;&#039;c&#039;&#039;&#039;ontrol &#039;&#039;&#039;s&#039;&#039;&#039;ystem - GitLab Service)&lt;br /&gt;
** virtualization-sc-brokerd&lt;br /&gt;
** wiki-int&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;API user&#039;&#039;&#039;:&lt;br /&gt;
* &amp;lt;SERVICE&amp;gt;-api&lt;br /&gt;
** lbaas-api&lt;br /&gt;
&lt;br /&gt;
Naming Convention &#039;&#039;&#039;Provisioning user&#039;&#039;&#039;:&lt;br /&gt;
* prov-&amp;lt;SERVICE&amp;gt;-&amp;lt;TYPE&amp;gt;&lt;br /&gt;
** prov-backup-kvm&lt;br /&gt;
** prov-backup-zsnapshot&lt;br /&gt;
** prov-cloud-openstack&lt;br /&gt;
** prov-configuration-management-puppet&lt;br /&gt;
** &amp;lt;s&amp;gt;prov-lbaas-haproxy&amp;lt;/s&amp;gt;&lt;br /&gt;
** prov-mail-ox (&#039;&#039;&#039;O&#039;&#039;&#039;pen-&#039;&#039;&#039;X&#039;&#039;&#039;change)&lt;br /&gt;
** prov-monitoring-zabbix&lt;br /&gt;
** prov-storage-nextcloud&lt;br /&gt;
&lt;br /&gt;
==== backup Service User (stoney backup) ====&lt;br /&gt;
The following LDIF shows the backup service user entry:&lt;br /&gt;
 dn: cn=backup,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: dhcp&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: backup&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== dhcp (DHCP) Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the dhcp service user entry:&lt;br /&gt;
 dn: cn=dhcp,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: dhcp&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: dhcp&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== libvirtd Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the libvirtd service user entry:&lt;br /&gt;
 dn: cn=libvirtd,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: libvirtd&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: dhcp&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== prov-backup-kvm (Provisioning-Backup-KVM Daemon) Service User (stoney conductor) ====&lt;br /&gt;
The following LDIF shows the prov-backup-kvm service user entry:&lt;br /&gt;
 dn: cn=prov-backup-kvm,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 cn: prov-backup-kvm&lt;br /&gt;
 sn: prov-backup-kvm&lt;br /&gt;
 userPassword: &amp;lt;STONEY-CLOUD-PROV-BACKUP-KVM-PASSWORD&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== slapd-mirrormode Service User (stoney core) ====&lt;br /&gt;
The following LDIF shows the slapd-mirrormode service user entry:&lt;br /&gt;
 dn: cn=slapd-mirrormode,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: slapd-mirrormode&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: slapd-mirrormode&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
==== billing-cyclops Service User (stoney core) ====&lt;br /&gt;
The following LDIF shows the billing  service user entry:&lt;br /&gt;
 dn: cn=billing-cyclops,ou=services,ou=administration,dc=stoney-cloud,dc=org&lt;br /&gt;
 cn: slapd-mirrormode&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalPerson&lt;br /&gt;
 objectclass: inetOrgPerson&lt;br /&gt;
 sn: billing-cyclops&lt;br /&gt;
 userPassword: {SSHA}pJpqL95nlFi78rnAstmn6VvZCXWTjVHZ&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
=== Configuration management ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system relevant entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system relevant entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: configuration management&lt;br /&gt;
description: This sub tree contains the configuration management system relevant entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Configuration management - Regions ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system region entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system region entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: regions&lt;br /&gt;
description: This sub tree contains the configuration management system region entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Configuration management - Regions - Region example =====&lt;br /&gt;
The following LDIF example shows a typical region.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=duedingen_production,ou=regions,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalRole&lt;br /&gt;
cn: duedingen_production&lt;br /&gt;
description: This region contains the two data centres located in Düdingen and is used for production systems.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The region used by the configuration management system Puppet via enc.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;cn: duedingen_production&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The human readable description of region.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: This region contains the two data centres located in Düdingen and is used for production systems.&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Configuration management - Roles ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the configuration management system role entries of the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
# This sub tree contains the configuration management system role entries of the whole stoney cloud installation.&lt;br /&gt;
dn: ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: roles&lt;br /&gt;
description: This sub tree contains the configuration management system role entries of the whole stoney cloud installation.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== Configuration management - Roles - Roles example =====&lt;br /&gt;
The following LDIF example shows a typical role.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: cn=base,ou=roles,ou=configuration management,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstConfigurationManagementRole&lt;br /&gt;
cn: base&lt;br /&gt;
displayName: Base&lt;br /&gt;
sstProfiles: - base&lt;br /&gt;
description: This is the base role used by all new servers managed by Puppet, but without a final role decided.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 180px&amp;quot; | Attribute&lt;br /&gt;
! style=&amp;quot;text-align:left; width: 220px&amp;quot; | Objectclass&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Existance&lt;br /&gt;
! style=&amp;quot;width: 80px&amp;quot;                   | Mandatory&lt;br /&gt;
! style=&amp;quot;text-align:left;&amp;quot;              | Description&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role name used by the configuration management system Puppet via enc.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;cn: base&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| displayName&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role display name (human readable).&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;displayName: Base&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstProfiles&lt;br /&gt;
| sstConfigurationManagementRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The role definition (profile list) used by the configuration management system Puppet via enc. The profiles are listed, one per line. Multiple lines must be base64 endoded:&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstProfiles: - base&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sstProfiles:: LSBiYXNlCi0gY2VydGJvdAo=&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Encode:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cat &amp;lt;&amp;lt; EOF | base64&lt;br /&gt;
- base&lt;br /&gt;
- certbot&lt;br /&gt;
EOF&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Decode:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
echo LSBiYXNlCi0gY2VydGJvdAo= | base64 --decode&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalRole&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The human readable description of region.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: This region contains the two data centres located in Düdingen and is used for production systems.&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Operating System ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the operating system choices for the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
 # This sub tree contains the operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: operating system&lt;br /&gt;
 description: This sub tree contains the operating system choices for the whole stoney cloud installation.&lt;br /&gt;
&lt;br /&gt;
==== Linux ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 # This sub tree contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000019&lt;br /&gt;
 sstDisplayName: Linux&lt;br /&gt;
 description: This sub tree contains the Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Debian Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000020&lt;br /&gt;
 sstDisplayName: Debian&lt;br /&gt;
 description: This sub tree contains the Debian Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000021,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000021&lt;br /&gt;
 sstDisplayName: 5&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000022,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000022&lt;br /&gt;
 sstDisplayName: 6&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000023,uid=4000020,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000023&lt;br /&gt;
 sstDisplayName: 7&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Fedora Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000024&lt;br /&gt;
 sstDisplayName: Fedora&lt;br /&gt;
 description: This sub tree contains the Fedora Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000025,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000025&lt;br /&gt;
 sstDisplayName: 12&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000026,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000026&lt;br /&gt;
 sstDisplayName: 13&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000027,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000027&lt;br /&gt;
 sstDisplayName: 14&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000028,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000028&lt;br /&gt;
 sstDisplayName: 15&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000029,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000029&lt;br /&gt;
 sstDisplayName: 16&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000030,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000030&lt;br /&gt;
 sstDisplayName: 17&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000031,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000031&lt;br /&gt;
 sstDisplayName: 18&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000032,uid=4000024,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000032&lt;br /&gt;
 sstDisplayName: 19&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Gentoo Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000033&lt;br /&gt;
 sstDisplayName: Gentoo&lt;br /&gt;
 description: This sub tree contains the Gentoo Linux based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000034&lt;br /&gt;
 sstDisplayName: 2012.0&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000035&lt;br /&gt;
 sstDisplayName: 2013.0&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
==== Windows ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 # This sub tree contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000036&lt;br /&gt;
 sstDisplayName: Windows&lt;br /&gt;
 description: This sub tree contains the Windows based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2008 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000037&lt;br /&gt;
 sstDisplayName: Server 2008&lt;br /&gt;
 description: This sub tree contains the Windows Server 2008 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000038,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000038&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000039,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000039&lt;br /&gt;
 sstDisplayName: Enterprise&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000040,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000040&lt;br /&gt;
 sstDisplayName: Foundation&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000041,uid=4000037,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000041&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2008 R2 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000042&lt;br /&gt;
 sstDisplayName: Server 2008 R2&lt;br /&gt;
 description: This sub tree contains the Windows Server 2008 R2 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000043,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000043&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000044,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000044&lt;br /&gt;
 sstDisplayName: Enterprise&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000045,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000045&lt;br /&gt;
 sstDisplayName: Foundation&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000046,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000046&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000047,uid=4000042,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000047&lt;br /&gt;
 sstDisplayName: Web&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 # This sub tree contains the Windows Server 2012 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000048&lt;br /&gt;
 sstDisplayName: Server 2012&lt;br /&gt;
 description: This sub tree contains the Windows Server 2012 based operating system choices for the whole stoney cloud installation.&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000049,uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000049&lt;br /&gt;
 sstDisplayName: Datacenter&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000050,uid=4000048,uid=4000036,ou=operating system,ou=configuration,dc=stoney-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000050&lt;br /&gt;
 sstDisplayName: Standard&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
=== Software Stack ===&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=software stack,ou=configuration,dc=foss-cloud,dc=org&#039;&#039;&#039; contains the software stack choices for the whole stoney cloud installation. They can be extended by the administrator.&lt;br /&gt;
 # This sub tree contains the software stack choices for the whole stoney cloud installation.&lt;br /&gt;
 dn: ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: software stack&lt;br /&gt;
 description: This sub tree contains the software stack choices for the whole stoney cloud installation.&lt;br /&gt;
&lt;br /&gt;
 dn: ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: organizationalUnit&lt;br /&gt;
 ou: environments&lt;br /&gt;
 description: This sub tree contains the software stack environment choices for the whole stoney cloud installation.&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000054,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000054&lt;br /&gt;
 sstDisplayName: Test Environment&lt;br /&gt;
 description: This is the environment used for testing (pre-production).&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000055,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000055&lt;br /&gt;
 sstDisplayName: Development Environment&lt;br /&gt;
 description: This is the environment used for development (sandbox).&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
 &lt;br /&gt;
 dn: uid=4000056,ou=environments,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 uid: 4000056&lt;br /&gt;
 sstDisplayName: Production Environment&lt;br /&gt;
 description: This is the environment used for production.&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
The multi-valued &#039;&#039;&#039;labeledURI&#039;&#039;&#039; attribute contains the &#039;&#039;&#039;operating system(s)&#039;&#039;&#039; for which a software stack works and therefore can be shown to the customer. The following three attributes tell us, who is allowed to access this leaf:&lt;br /&gt;
* &#039;&#039;&#039;sstAllowResellerUID&#039;&#039;&#039;: Stores the reseller UID(s) that are allowed access to this leaf. If set to 0 (zero), all resellers have access.&lt;br /&gt;
* &#039;&#039;&#039;sstAllowCustomerUID&#039;&#039;&#039;: Stores the customer UID(s) that are allowed access to this leaf. If set to 0 (zero), all customers belonging to the allowed resellers have access.&lt;br /&gt;
* &#039;&#039;&#039;sstAllowPersonUID&#039;&#039;&#039;: Stores the person UID(s) that are allowed access to this leaf. If set to 0 (zero), all people belonging to the allowed resellers and the allowed customers have access.&lt;br /&gt;
 dn: uid=4000051,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 objectclass: labeledURIObject&lt;br /&gt;
 uid: 4000051&lt;br /&gt;
 sstDisplayName: Django (Version 1)&lt;br /&gt;
 description: Django Python Web Framework Version 1.&lt;br /&gt;
 labeledURI: ldap://uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 labeledURI: ldap://uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
 dn: uid=4000052,ou=software stack,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 objectclass: top&lt;br /&gt;
 objectclass: sstGroupObjectClass&lt;br /&gt;
 objectclass: sstRelationship&lt;br /&gt;
 objectclass: labeledURIObject&lt;br /&gt;
 uid: 4000052&lt;br /&gt;
 sstDisplayName: Django (Version 2)&lt;br /&gt;
 description: Django Python Web Framework Version 2.&lt;br /&gt;
 labeledURI: ldap://uid=4000034,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 labeledURI: ldap://uid=4000035,uid=4000033,uid=4000019,ou=operating system,ou=configuration,dc=foss-cloud,dc=org&lt;br /&gt;
 sstEnvironmentName: Test&lt;br /&gt;
 sstEnvironmentName: Development&lt;br /&gt;
 sstEnvironmentName: Production&lt;br /&gt;
 sstBelongsToResellerUID: 4000000&lt;br /&gt;
 sstBelongsToCustomerUID: 4000001&lt;br /&gt;
 sstAllowResellerUID: 0&lt;br /&gt;
 sstAllowCustomerUID: 0&lt;br /&gt;
 sstAllowPersonUID: 0&lt;br /&gt;
&lt;br /&gt;
== Customers ==&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the customers. Each customer has a unique uid, which is used for later reference.&lt;br /&gt;
&lt;br /&gt;
=== Customers - Customer ===&lt;br /&gt;
We have two kinds of customers:&lt;br /&gt;
* &#039;&#039;&#039;Company customer&#039;&#039;&#039;: This is the normal case, as we target companies.&lt;br /&gt;
* &#039;&#039;&#039;Private customer&#039;&#039;&#039;: A private customer does not have a company/organisation name.&lt;br /&gt;
&lt;br /&gt;
The following LDIF examples will show both cases where necessary. The first LDIF shows you the default &#039;&#039;&#039;company customer&#039;&#039;&#039; entry after a fresh stoney cloud installation. All relevant data belonging to this customer is stored below this dn.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomer&lt;br /&gt;
objectclass: sstRelationship&lt;br /&gt;
uid: 4000001&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstIsCompany: TRUE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following LDIF shows you the &#039;&#039;&#039;private customer&#039;&#039;&#039; entry. All relevant data belonging to this customer are stored below this dn.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomer&lt;br /&gt;
objectclass: sstRelationship&lt;br /&gt;
uid: 4000001&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
sstIsCompany: FALSE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the customer. For example: Customer Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsCompany&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set. Otherwise &amp;lt;code&amp;gt;givenName&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;surname&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;company customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info Customer Ltd. &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;private customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute Name&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Customer Name&lt;br /&gt;
| Customer name, for example: &#039;&#039;&#039;stepping stone GmbH&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Address&lt;br /&gt;
| Multi-lined address, for example: &#039;&#039;&#039;Neufeldstrasse 9&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Post Office Box&lt;br /&gt;
| Post Office Box, for example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| State or Province Name&lt;br /&gt;
| This pull down menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country&lt;br /&gt;
| Country code according to [http://www.iso.org/iso/home/standards/country_codes.htm ISO 3166-1]. The English short name (upper/lower case) is used for the interface and the corresponding ISO 3166-1-alpha-2 code (a two-letter code that represents a country name, recommended as the general purpose code) is used for the LDAP entry). For example: &#039;&#039;&#039;Switzerland&#039;&#039;&#039; in the interface and &#039;&#039;&#039;CH&#039;&#039;&#039; in the LDAP directory.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postal Code&lt;br /&gt;
| Postal Code without the country code, for example: &#039;&#039;&#039;3012&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Location&lt;br /&gt;
| Location, for example: &#039;&#039;&#039;Berne&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| Display language of the user according to [http://www.ietf.org/rfc/rfc1766.txt RFC 1766]. For example: &#039;&#039;&#039;de-CH&#039;&#039;&#039;. The following languages are currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* de-DE&lt;br /&gt;
* en-GB&lt;br /&gt;
* en-US&lt;br /&gt;
* fr-CH&lt;br /&gt;
* fr-FR&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;To:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Hans Muster &amp;lt;hans.muster@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and it MUST contain at least one &amp;quot;To:&amp;quot; billing mail address.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;CC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Info Customer Ltd. &amp;lt;info@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;CC:&amp;quot; billing mail addresses.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBcc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;BCC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;BCC:&amp;quot; billing mail addresses. Here we&#039;d expect the Accounting mail address of the service provider (for accountability reasons).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| Website&lt;br /&gt;
| Website URL according to [http://tools.ietf.org/html/rfc3986 RFC-3986]. For example: &#039;&#039;&#039;http://www.stepping-stone.ch&#039;&#039;&#039;/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the attribute &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; of the parent entry is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Shipping address (optional) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=shipping,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the shipping address and is optional (it is only needed, if the shipping address differs from the billing Address).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=shipping,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: shipping&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Billing ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=billing,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains billing relevant data. The following example shows a customer, receiving a monthly bill.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingCustomer&lt;br /&gt;
ou: billing&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
sstBillingCycle: 1&lt;br /&gt;
sstCurrency: CHF&lt;br /&gt;
sstPaymentMethod: invoice&lt;br /&gt;
sstDeliveryMethod: post&lt;br /&gt;
sstDiscount: 20&lt;br /&gt;
sstCancellationDate: 20181231&lt;br /&gt;
sstMailToUID: 4000002&lt;br /&gt;
sstMailCcUID: 4000064&lt;br /&gt;
sstMailBccUID: 4000066&lt;br /&gt;
sstMailBccUID: 4000069&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example shows a customer, which receives their bill via their reseller (no billing done by us):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000001,ou=customers,o=stepping-stone,c=ch&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingCustomer&lt;br /&gt;
ou: billing&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillable&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| All hierarchical levels must have &amp;lt;code&amp;gt;sstBillable: TRUE&amp;lt;/code&amp;gt; to actually have an invoice generated and sent. If the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; doesn&#039;t exist, the default is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;. This way, we are forced to set a reseller, customer or product manually to &amp;lt;code&amp;gt;sstBillable: FALSE&amp;lt;/code&amp;gt; if we want to avoid sending them an invoice.&lt;br /&gt;
|-&lt;br /&gt;
| sstBillingCycle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Billing cycle in months. This attribute &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is only checked (evaluated), if the reseller the customer belongs to, has &amp;lt;code&amp;gt;sstResellerBill&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;FALSE&amp;lt;/code&amp;gt; (as is the case for the reseller stepping stone GmbH). Possible values:&lt;br /&gt;
* 1: Monthly invoice.&lt;br /&gt;
* 3: Quarterly invoice.&lt;br /&gt;
* 6: Semi-annually invoice. &lt;br /&gt;
* &#039;&#039;&#039;12&#039;&#039;&#039;: Yearly invoice (this is the default billing period if no &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCurrency&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Three-letter currency code according to [https://en.wikipedia.org/wiki/ISO_4217 ISO 4217]. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;CHF&#039;&#039;&#039;: Swiss franc (this is the default currency if no &amp;lt;code&amp;gt;sstCurrency&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* EUR: Euro&lt;br /&gt;
* GBP: Pound sterling&lt;br /&gt;
* USD: United States dollar&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstPaymentMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Payment method of the invoice. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;invoice&#039;&#039;&#039;: Classic invoice, sent according to the delivery method defined in &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; (this is the default payment method if no &amp;lt;code&amp;gt;sstPaymentMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* postcard: Electronic invoice via PostFinance.&lt;br /&gt;
* creditcard: Credit card payment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDeliveryMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Delivery method of invoices or access data. Possible values are:&lt;br /&gt;
* email: The invoice or access data is sent via email to the recipient.&lt;br /&gt;
* &#039;&#039;&#039;post&#039;&#039;&#039;: The invoice or access data is sent via snail mail to the recipient (this is the default delivery method if no &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDiscount&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| An optional customer discount (an integer value between 0 and 100). Default is &#039;&#039;&#039;0&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCancellationDate&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The cancellation date of a reseller, customer or service in the form of [YYYY][MM][DD] (ISO 8601). For example: &#039;&#039;&#039;20181231&#039;&#039;&#039;. The attribute &amp;lt;code&amp;gt;sstCancellationDate&amp;lt;/code&amp;gt; is used in a logical AND combination with &amp;lt;code&amp;gt;sstIsActive&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Even though this attribute is multi-valued, we expect on recipient only. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via To. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCcUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailCcUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via CC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000064&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBccUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailBccUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via BCC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000066&#039;&#039;&#039; or &#039;&#039;&#039;4000069&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: The attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is mandatory, if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: As the default of the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, it&#039;s not really mandatory. For better readability, please always add the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - Employees ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=employees,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the employees belonging to the reseller &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (all the employees with the the attribute sstBelongsToEmployeeUID=4000001). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this customer. The number of employees is always the same or smaller than the number of people belonging to a customer (they are a subset).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=employees,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstEmployeeOfUID=4000001)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; has one employee (with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer - People ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=people,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the all the people belonging to the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (all the people, including the employees, with the the attribute sstBelongsToCustomerUID=4000001). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of people is always the same or larger than the number of employees belonging to a reseller.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: people&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToCustomerUID=4000001)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000064,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000066,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000069,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, four people the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (including the employee with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
=== Customers - Customer (LEGACY) ===&lt;br /&gt;
We have two kinds of customers:&lt;br /&gt;
* &#039;&#039;&#039;Company customer&#039;&#039;&#039;: This is the normal case, as we target companies.&lt;br /&gt;
* &#039;&#039;&#039;Private customer&#039;&#039;&#039;: A private customer does not have a company/organisation name.&lt;br /&gt;
&lt;br /&gt;
The following LDIF examples will show both cases where necessary. The first LDIF shows you the default &#039;&#039;&#039;company customer&#039;&#039;&#039; entry after a fresh stoney cloud installation. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomerCompany&lt;br /&gt;
uid: 4000001&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: Customer Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
The following LDIF shows you the &#039;&#039;&#039;private customer&#039;&#039;&#039; entry. All relevant data belonging to this reseller are stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstCustomerPerson&lt;br /&gt;
uid: 4000001&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000001.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Customers - Customer (LEGACY) - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;company customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressCompany&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Customer Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Company name, example: stepping stone GmbH&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding [https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ISO 3166-1-alpha-2] code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address for a &#039;&#039;&#039;private customer&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressPerson&lt;br /&gt;
ou: address&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding ISO 3166-1-alpha-2 code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
== Groups ==&lt;br /&gt;
&lt;br /&gt;
== People ==&lt;br /&gt;
The sub tree which contains all the people. Each person has a unique identifier (uid):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: people&lt;br /&gt;
description: The sub tree which contains all the people.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== People - Person ===&lt;br /&gt;
Each person hat its own leaf with a unique identifier (uid). The following LDIF shows you a typical &#039;&#039;&#039;person&#039;&#039;&#039; entry. All relevant data belonging to this person is stored below this leaf.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstPerson&lt;br /&gt;
uid: 4000002&lt;br /&gt;
sstGender: m&lt;br /&gt;
sstTitle: CEO&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
displayName: Name Surname&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
userPassword: {SSHA}UgrBHVhKxFQInWWpzf1ddgEVmSg5vKUm&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
cn: admin&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstTimeZoneOffset: UTC+01&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstBelongsToCustomerUID: 4000001&lt;br /&gt;
sstEmployeeOfUID: 4000000&lt;br /&gt;
sstEmployeeOfUID: 4000001&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The person &#039;&#039;&#039;Name Surname&#039;&#039;&#039; (with the uid=4000002) belongs to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (with sstBelongsToResellerUID=4000000) and is an employee of the same company (sstEmployeeOfUID=4000000). The person also belongs the customer &#039;&#039;&#039;Customer Ltd.&#039;&#039;&#039; (with sstBelongsToCustomerUID=4000001) and is an employee of the same company (sstEmployeeOfUID=4000001).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| style=&amp;quot;width:200px; border-top:0.002cm solid #000000;border-bottom:0.002cm solid #000000;border-left:0.002cm solid #000000;border-right:none;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;AttributeType&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;User alterable&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;width:600px; border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| UID&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Unique Identifier. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstTitle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Title&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The title of a person as a [http://en.wikipedia.org/wiki/UTF-8 UTF-8]] formatted string. For example: &#039;&#039;&#039;CEO&#039;&#039;&#039; or &#039;&#039;&#039;Technician&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| displayName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display name&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display name, for example: &#039;&#039;&#039; Hans Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766: &amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[http://www.loc.gov/standards/iso639-2/php/code_list.php ISO 639-1 Code]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt;-&amp;lt;nowiki&amp;gt;[&amp;lt;/nowiki&amp;gt;[http://www.iso.org/iso/english_country_names_and_code_elements ISO 3166-1-alpha-2 code]&amp;lt;nowiki&amp;gt;]&amp;lt;/nowiki&amp;gt; . For example: &amp;lt;code&amp;gt;de-CH&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| userPassword&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Password&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| SSHA user password. {SSHA} is a [http://www.ietf.org/rfc/rfc2307.txt RFC 2307] password scheme which uses the SHA1 secure hash algorithm. For example: &#039;&#039;&#039;{SSHA}h+qbh3pFWrZxmz02H5tXhOr+0/wrmHFF&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The users mail address, for example: &#039;&#039;&#039;hans.muster@example.com&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| cn&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Common name of the user, for example: &#039;&#039;&#039;sst-mei&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstTimeZoneOffset&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Time zone as an offset from UTC. For example: &#039;&#039;&#039;UTC+01&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| Is the entry active? Either &#039;&#039;&#039;true&#039;&#039;&#039; (yes) or &#039;&#039;&#039;false&#039;&#039;&#039; (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| If this value is set to &#039;&#039;&#039;1&#039;&#039;&#039;, the user is the super user of the whole stoney cloud installation. Therefore this user can add and remove resellers. Use with caution.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the person belongs to. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000000&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToCustomerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the customer UID the person belongs to. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000001&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstEmployeeOfUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Employee of&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the UID(s) the person is an employee of. The UID(s) can belong to one or more resellers or also to one or more customers. A unique value with 7 digits or more. For example: &#039;&#039;&#039;4000001&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| External ID&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database. For example: &#039;&#039;&#039;234567&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Mandatory, if the person belongs to customer that has subscribed a [https://wwww.stoney-storage.com/ stoney storage] service.&lt;br /&gt;
&lt;br /&gt;
==== People - Person - Session tokens ====&lt;br /&gt;
Using session tokens, when the user logs out, the client sends a logout request to the server. The session token is then removed from LDAP by the server and the client discards the session token.&lt;br /&gt;
&lt;br /&gt;
Special cases:&lt;br /&gt;
* If the user&#039;s password is changed, all session tokens must be removed from LDAP in order to force the user to re-login.&lt;br /&gt;
* If any attributes are changed which control the user&#039;s affiliation (reseller, company, etc), all session tokens must be removed from LDAP in order to force the user to re-login.&amp;lt;br /&amp;gt;Specific attributes:&lt;br /&gt;
** sstBelongsToResellerUID&lt;br /&gt;
** sstBelongsToCustomerUID&lt;br /&gt;
** sstEmployeeOfUID&lt;br /&gt;
** sstEmployeeOfUID&lt;br /&gt;
&lt;br /&gt;
In our case, we store the session tokens in a leaf beneath the person (as these tokens are personal).&lt;br /&gt;
&lt;br /&gt;
===== People - Person - Session tokens example =====&lt;br /&gt;
Below each person entry, we have a tokens sub tree, which stores the session tokens:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=tokens,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
ou: tokens&lt;br /&gt;
description: The sub tree for the session tokens of the person with the uid &#039;4000002&#039;.&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Objectclass&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ou&lt;br /&gt;
| organizationalUnit&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The sub tree containing all the session tokens.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;ou: tokens&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| organizationalUnit&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. As this sub tree is created by the stoney API, we don&#039;t really need a human readable description.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: The sub tree for the session tokens of the person with the uid &#039;4000002&#039;.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
Each session token receives its own child-entry to store additional meta data, such as the token&#039;s create date, last utilisation date, ... In the example below, the session token &amp;lt;code&amp;gt;sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&amp;lt;/code&amp;gt; was created on the 13th of April 2021 at 08:10:27 UTC (&amp;lt;code&amp;gt;sstCreationDate: 20210413T081027Z&amp;lt;/code&amp;gt;) and two clients have used this token (the first with an IPv4 address, the second with an IPv6 address):&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstToken=2e211493-41e6-4c74-9431-b5d990b177a4,ou=tokens,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstTokenObjectClass&lt;br /&gt;
sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&lt;br /&gt;
description: The sub tree for the JSON Web Token with the id &#039;2e211493-41e6-4c74-9431-b5d990b177a4&#039;.&lt;br /&gt;
sstCreationDate: 20210413T081027Z&lt;br /&gt;
sstClient: 20210413T081027Z: 194.176.109.13 Mozilla/5.0 (X11; Linux x86_64; rv:85.0) Gecko/20100101 Firefox/85.0&lt;br /&gt;
sstClient: 20210413T132805Z: 2001:0db8:85a3:0000:0000:8a2e:0370:7334 Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4456.0 Safari/537.36 Edg/91.0.845.2&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The API will make sure, that the amount of registered remote IP addresses and requesting User-Agents doesn&#039;t exceed a certain configurable limit (for example: 2). If the limit is exceeded, the session will be invalidated.&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Objectclass&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstToken&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The sub tree containing all the information of a session (creation date, access date, IPv4 or IPv6 address and the clients user agent). The session token has the form of a UUID (Universally Unique Identifier)..&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstToken: 2e211493-41e6-4c74-9431-b5d990b177a4&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. As this sub tree is created by the stoney API, we don&#039;t really need a human readable description.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;description: The sub tree for the JSON Web Token with the id &#039;2e211493-41e6-4c74-9431-b5d990b177a4&#039;.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCreationDate&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The session token creation time (UTC) in the form of &amp;lt;code&amp;gt;[YYYY][MM][DD]T[hh][mm][ss]Z&amp;lt;/code&amp;gt; according to the [http://en.wikipedia.org/wiki/ISO_8601 ISO 8601] definition.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstCreationDate: 20210413T081027Z&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstClient&lt;br /&gt;
| sstTokenObjectClass&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The multi-valued attribute containing client information. This attribute contains the following information:&lt;br /&gt;
* The access time (UTC) in the form of &amp;lt;code&amp;gt;[YYYY][MM][DD]T[hh][mm][ss]Z&amp;lt;/code&amp;gt; according to the [http://en.wikipedia.org/wiki/ISO_8601 ISO 8601] definition.&lt;br /&gt;
* The IPv4 or IPv6 address, from which the client has accessed the stoney API.&lt;br /&gt;
* The user agent of the client.&lt;br /&gt;
&lt;br /&gt;
This information is separated by spaces: &amp;lt;code&amp;gt;sstClient: [YYYY][MM][DD]T[hh][mm][ss]Z&amp;quot; &amp;quot;IPv4 or IPv6&amp;quot; &amp;quot;User-Agent&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For example: &amp;lt;code&amp;gt;sstClient: 20210413T081027Z 194.176.109.13 Mozilla/5.0 (X11; Linux x86_64; rv:85.0) Gecko/20100101 Firefox/85.0&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Please be aware, that the maximal length of a sstClient string is restricted to 256 characters.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== People - Person - Roles (LEGACY) ====&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=Monitoring Administrator,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: Monitoring Administrator&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=User,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: User&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: sstRole=Virtualization Administrator,uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstRoles&lt;br /&gt;
sstProduct: 0&lt;br /&gt;
sstRole: Virtualization Administrator&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Reseller ==&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains all the resellers. Each reseller has a unique uid, which is used for later reference.&lt;br /&gt;
&lt;br /&gt;
=== Reseller - Reseller ===&lt;br /&gt;
The following LDIF shows a typical reseller entry. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstReseller&lt;br /&gt;
uid: 4000000&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstIsCompany: TRUE&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039;. A reseller must be a company (&amp;lt;code&amp;gt;sstIsCompany: TRUE&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| description&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The description of the leaf. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsCompany&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry a company? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Billing address ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: Name Surname &amp;lt;name.surname@example.com&amp;gt;&lt;br /&gt;
sstMailCc: Info Reseller Ltd. &amp;lt;info@example.com&amp;gt;&lt;br /&gt;
sstMailBcc: Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute Name&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Interface Equivalent&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Reseller Name&lt;br /&gt;
| Reseller name, for example: &#039;&#039;&#039;stepping stone GmbH&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Gender&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female. For example: &#039;&#039;&#039;m&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Name&lt;br /&gt;
| Name, for example: &#039;&#039;&#039;Hans&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname&lt;br /&gt;
| Surname, for example: &#039;&#039;&#039;Muster&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Address&lt;br /&gt;
| Multi-lined address, for example: &#039;&#039;&#039;Neufeldstrasse 9&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Post Office Box&lt;br /&gt;
| Post Office Box, for example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| State or Province Name&lt;br /&gt;
| This pull down menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country&lt;br /&gt;
| Country code according to [http://www.iso.org/iso/home/standards/country_codes.htm ISO 3166-1]. The English short name (upper/lower case) is used for the interface and the corresponding ISO 3166-1-alpha-2 code (a two-letter code that represents a country name, recommended as the general purpose code) is used for the LDAP entry). For example: &#039;&#039;&#039;Switzerland&#039;&#039;&#039; in the interface and &#039;&#039;&#039;CH&#039;&#039;&#039; in the LDAP directory.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postal Code&lt;br /&gt;
| Postal Code without the country code, for example: &#039;&#039;&#039;3012&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Location&lt;br /&gt;
| Location, for example: &#039;&#039;&#039;Berne&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Language&lt;br /&gt;
| Display language of the user according to [http://www.ietf.org/rfc/rfc1766.txt RFC 1766]. For example: &#039;&#039;&#039;de-CH&#039;&#039;&#039;. The following languages are currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* de-DE&lt;br /&gt;
* en-GB&lt;br /&gt;
* en-US&lt;br /&gt;
* fr-CH&lt;br /&gt;
* fr-FR&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The resellers &amp;quot;To:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Hans Muster &amp;lt;hans.muster@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and it MUST contain at least one &amp;quot;To:&amp;quot; billing mail address.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The resellers &amp;quot;CC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Info Reseller Ltd. &amp;lt;info@example.com&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;CC:&amp;quot; billing mail addresses.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBcc&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mail Address&lt;br /&gt;
| The customers &amp;quot;BCC:&amp;quot; billing mail address, for example: &#039;&#039;&#039;Accounting Service Provider Ltd. &amp;lt;accounting@example.org&amp;gt;&#039;&#039;&#039;. This is a multi-valued attribute and can contain zero or more &amp;quot;BCC:&amp;quot; billing mail addresses. Here we&#039;d expect the Accounting mail address of the service provider (for accountability reasons).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Telephone&lt;br /&gt;
| Telephone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 31 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile&lt;br /&gt;
| Mobile phone number of the user according to [http://en.wikipedia.org/wiki/E.164 E.164] (international dialling code, &amp;lt;s&amp;gt;trunk code&amp;lt;/s&amp;gt;, area code, subscriber line). For example: &#039;&#039;&#039;+41 76 222 33 44&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| Website&lt;br /&gt;
| Website URL according to [http://tools.ietf.org/html/rfc3986 RFC-3986]. For example: &#039;&#039;&#039;http://www.stepping-stone.ch&#039;&#039;&#039;/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the attribute &amp;lt;code&amp;gt;sstIsCompany&amp;lt;/code&amp;gt; of the parent entry is set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, the &amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt; must be set.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Shipping address (optional) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=shipping,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the shipping address and is optional (it is only needed, if the shipping address differs from the billing Address).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=shipping,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddress&lt;br /&gt;
ou: shipping&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Billing ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=billing,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains billing relevant data. The following example shows a reseller, receiving a monthly bill.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingReseller&lt;br /&gt;
ou: billing&lt;br /&gt;
sstResellerBill: TRUE&lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
sstBillingCycle: 1&lt;br /&gt;
sstCurrency: CHF&lt;br /&gt;
sstPaymentMethod: invoice&lt;br /&gt;
sstDeliveryMethod: post&lt;br /&gt;
sstDiscount: 32&lt;br /&gt;
sstCancellationDate: 20181231&lt;br /&gt;
sstMailToUID: 4000002&lt;br /&gt;
sstMailCcUID: 4000064&lt;br /&gt;
sstMailBccUID: 4000066&lt;br /&gt;
sstMailBccUID: 4000069&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following example shows a reseller, where their customers receive a bill directly:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=billing,uid=4000000,ou=reseller,o=stepping-stone,c=ch&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstBillingReseller&lt;br /&gt;
ou: billing&lt;br /&gt;
sstResellerBill: FALSE &lt;br /&gt;
sstBillable: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstResellerBill&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Should the the reseller receive a consolidated invoice for all their customers? This can be either &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;FALSE&amp;lt;/code&amp;gt;. The default value is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, meaning that the resellers receives a consolidated invoice for all their customers.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillable&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| All hierarchical levels must have &amp;lt;code&amp;gt;sstBillable: TRUE&amp;lt;/code&amp;gt; to actually have an invoice generated and sent. If the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; doesn&#039;t exist, the default is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;. This way, we are forced to set a reseller, customer or product manually to &amp;lt;code&amp;gt;sstBillable: FALSE&amp;lt;/code&amp;gt; if we want to avoid sending them an invoice.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBillingCycle&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Billing cycle in months. This attribute &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is only checked (evaluated), if the reseller has &amp;lt;code&amp;gt;sstResellerBill&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt; (as is the case for the resellers except for stepping stone GmbH). Possible values:&lt;br /&gt;
* 1: Monthly invoice (this is the default billing period if no &amp;lt;code&amp;gt;sstBillingCycle&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* 3: Quarterly invoice.&lt;br /&gt;
* 6: Semi-annually invoice. &lt;br /&gt;
* 12: Yearly invoice.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCurrency&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Three-letter currency code according to [https://en.wikipedia.org/wiki/ISO_4217 ISO 4217]. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;CHF&#039;&#039;&#039;: Swiss franc (this is the default currency if no &amp;lt;code&amp;gt;sstCurrency&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* EUR: Euro&lt;br /&gt;
* GBP: Pound sterling&lt;br /&gt;
* USD: United States dollar&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstPaymentMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Payment method of the invoice. Possible values are:&lt;br /&gt;
* &#039;&#039;&#039;invoice&#039;&#039;&#039;: Classic invoice, sent according to the delivery method defined in &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; (this is the default payment method if no &amp;lt;code&amp;gt;sstPaymentMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
* postcard: Electronic invoice via PostFinance.&lt;br /&gt;
* creditcard: Credit card payment.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDeliveryMethod&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| Delivery method of invoices or access data. Possible values are:&lt;br /&gt;
* email: The invoice or access data is sent via email to the recipient.&lt;br /&gt;
* &#039;&#039;&#039;post&#039;&#039;&#039;: The invoice or access data is sent via snail mail to the recipient (this is the default delivery method if no &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstDiscount&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| An optional customer discount (an integer value between 0 and 100). Default is &#039;&#039;&#039;0&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstCancellationDate&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The cancellation date of a reseller, customer or service in the form of [YYYY][MM][DD] (ISO 8601). For example: &#039;&#039;&#039;20181231&#039;&#039;&#039;. The attribute &amp;lt;code&amp;gt;sstCancellationDate&amp;lt;/code&amp;gt; is used in a logical AND combination with &amp;lt;code&amp;gt;sstIsActive&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailToUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Even though this attribute is multi-valued, we expect on recipient only. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via To. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000002&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailCcUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailCcUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via CC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000064&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstMailBccUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| This attribute &amp;lt;code&amp;gt;sstMailBccUID&amp;lt;/code&amp;gt; is only checked (evaluated), if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;. Please be aware, that this attribure ist multi-valued and multiple recipients are to be expected. Stores the UID (Unique Identifier in the form integer value with 7 digits) of the person an email is sent to via BCC. This UID is used to look up the persons mail address, preferred language, name, surname or other information in the sub tree ou=people,dc=stoney-cloud,dc=org. For example: &#039;&#039;&#039;4000066&#039;&#039;&#039; or &#039;&#039;&#039;4000069&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: The attribute &amp;lt;code&amp;gt;sstMailToUID&amp;lt;/code&amp;gt; is mandatory, if the delivery method &amp;lt;code&amp;gt;sstDeliveryMethod&amp;lt;/code&amp;gt; is set to &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt;.&lt;br /&gt;
* &#039;&#039;&#039;x&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;&#039;&#039;&#039;: As the default of the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt; is &amp;lt;code&amp;gt;TRUE&amp;lt;/code&amp;gt;, it&#039;s not really mandatory. For better readability, please always add the attribute &amp;lt;code&amp;gt;sstBillable&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Customers ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=customers,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the customers belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the customers with the the attribute sstBelongsToResellerUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of customers belonging to this reseller.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=customers,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: customers&lt;br /&gt;
labeledURI: ldap:///ou=customers,dc=stoney-cloud,dc=org??one?(sstBelongsToResellerUID=4000000)&lt;br /&gt;
member: uid=4000001,ou=customers,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; has one customer (with the uid=4000001).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - Employees ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=employees,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the employees belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the employees with the the attribute sstBelongsToEmployeeUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of employees is always the same or smaller than the number of people belonging to a reseller (they are a subset).&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=employees,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstEmployeeOfUID=4000000)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; has one employee (with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller  - Reseller - People ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=people,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the all the people belonging to the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (all the people, including the employees, with the the attribute sstBelongsToResellerUID=4000000). With the attribute labeledURI we use the functionality of the [http://www.openldap.org/doc/admin24/overlays.html#Dynamic%20Lists dynamic lists overlay] to automatically give us a list of employees belonging to this reseller. The number of people is always the same or larger than the number of employees belonging to a reseller.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=people,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: labeledURIObject&lt;br /&gt;
ou: employees&lt;br /&gt;
labeledURI: ldap:///ou=people,dc=stoney-cloud,dc=org??one?(sstBelongsToResellerUID=4000000)&lt;br /&gt;
member: uid=4000002,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000064,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000066,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
member: uid=4000069,ou=people,dc=stoney-cloud,dc=org&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this example, four people the reseller &#039;&#039;&#039;Reseller Ltd.&#039;&#039;&#039; (including the employee with the uid=4000002).&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| attribure&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| TBD.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
=== Reseller - Reseller (LEGACY) ===&lt;br /&gt;
The following LDIF shows you the default reseller entry after a fresh stoney cloud installation. All relevant data belonging to this reseller is stored below this leaf.&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: sstReseller&lt;br /&gt;
uid: 4000000&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstBelongsToResellerUID: 4000000&lt;br /&gt;
sstIsActive: TRUE&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| uid&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| A unique integer value with 7 digits or more. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| The organisation name of the reseller. For example: Reseller Ltd..&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstBelongsToResellerUID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more, must correspond with the uid entry. For example: 4000000.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstExternalID&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
| The ID (or number) of a customer, person or product in an external database (for example: 234567).&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstIsActive&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Is the entry active? Either true (yes) or false (no).&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Legend:&lt;br /&gt;
* &#039;&#039;&#039;x&#039;&#039;&#039;: Mandatory in all cases.&lt;br /&gt;
&lt;br /&gt;
==== Reseller - Reseller - Billing address (LEGACY) ====&lt;br /&gt;
The sub tree &#039;&#039;&#039;ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&#039;&#039;&#039; contains the billing address:&lt;br /&gt;
&amp;lt;source lang=&#039;ldif&#039;&amp;gt;&lt;br /&gt;
dn: ou=address,uid=4000000,ou=reseller,dc=stoney-cloud,dc=org&lt;br /&gt;
objectclass: top&lt;br /&gt;
objectclass: organizationalUnit&lt;br /&gt;
objectclass: sstAddressCompany&lt;br /&gt;
ou: address&lt;br /&gt;
organizationName: Reseller Ltd.&lt;br /&gt;
sstGender: m&lt;br /&gt;
givenName: Name&lt;br /&gt;
surname: Surname&lt;br /&gt;
postalAddress: Street Number&lt;br /&gt;
countryName: CH&lt;br /&gt;
postalCode: Postal Code&lt;br /&gt;
localityName: Locality&lt;br /&gt;
preferredLanguage: en-GB&lt;br /&gt;
mail: name.surname@example.com&lt;br /&gt;
telephoneNumber: +41 00 000 00 00&lt;br /&gt;
mobileTelephoneNumber: +41 00 000 00 00&lt;br /&gt;
sstWebsiteURL: https://www.example.com/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The following table describes the different attributes:&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; style=&amp;quot;border-collapse: collapse; font-size:80%;&amp;quot; width=&amp;quot;100%&amp;quot; class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;Attribute&#039;&#039;&#039;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Existence&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;&#039;&#039;&#039;Mandatory&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.002cm solid #000000;padding:0.097cm;&amp;quot;| &#039;&#039;&#039;Description&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| organizationName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Company name, example: stepping stone GmbH&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstGender&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Either &#039;m&#039; for male or &#039;f&#039; for female.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| givenName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Givenname, example: Hans.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| surname&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Surname, example: Muster.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalAddress&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Street Number, example: Neufeldstrasse 9. Multi-lined field.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postOfficeBox&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x2&amp;lt;/center&amp;gt;&lt;br /&gt;
| Postbox, example: 3456.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| stateOrProvinceName&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x3&amp;lt;/center&amp;gt;&lt;br /&gt;
| This pulldown menu is only active (appears to the user), if the country is set to  Canada or the USA.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| countryName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Country code according to ISO 3166-1 (for the web interface) and the corresponding ISO 3166-1-alpha-2 code (as the LDAP entry). Example: For Switzerland the value is CH.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| postalCode&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Zipcode, example: 3012&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| localityName&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| City, example: Bern.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| preferredLanguage&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| Display language of the user according to RFC 1766, example: de-CH. Currently supported:&lt;br /&gt;
* de-CH&lt;br /&gt;
* en-GB&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mail&lt;br /&gt;
| &amp;lt;center&amp;gt;MUST&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x&amp;lt;/center&amp;gt;&lt;br /&gt;
| E-mail address of the user, example: hans.muster@example.com.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| telephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Fixnet phone number, example: +41 31 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| mobileTelephoneNumber&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &amp;lt;center&amp;gt;x1&amp;lt;/center&amp;gt;&lt;br /&gt;
| Mobile phone number, example: +41 76 222 33 44.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| sstWebsiteURL&lt;br /&gt;
| &amp;lt;center&amp;gt;MAY&amp;lt;/center&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
| URL gemäss RFC-3986 http://tools.ietf.org/html/rfc3986. For example http://www.stepping-stone.ch/.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
Legend:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;x1&#039;&#039;&#039;: Either telephoneNumber or mobileTelephoneNumber need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x2&#039;&#039;&#039;: Either postalAddress or postOfficeBox need to be present. Both attributes can exist together.&lt;br /&gt;
* &#039;&#039;&#039;x3&#039;&#039;&#039;: If the countryName is either Canada or the USA, the stateOrProvinceName needs to be present.&lt;br /&gt;
&lt;br /&gt;
[[Category:stoney core]][[Category:OpenLDAP directory]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_cloud:_Upgrade&amp;diff=4676</id>
		<title>stoney cloud: Upgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_cloud:_Upgrade&amp;diff=4676"/>
		<updated>2017-08-11T09:03:08Z</updated>

		<summary type="html">&lt;p&gt;Administrator: /* Basic Testing Steps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Overview =&lt;br /&gt;
This guide explains, what you need to do during the installation of your Multi-Node Installation.&lt;br /&gt;
&lt;br /&gt;
== Prepare your stoney cloud installation for the update ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;= 1.2.10.3 ===&lt;br /&gt;
&lt;br /&gt;
If you have a &#039;&#039;&#039;productive&#039;&#039;&#039; (releases) stoney cloud Installation, execute the following command:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
echo &#039;PORTAGE_BINHOST=&amp;quot;http://packages.stoney-cloud.org/stoney-cloud/releases/1.2/packages&amp;quot;&#039; &amp;gt;&amp;gt; /etc/portage/make.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have a &#039;&#039;&#039;test&#039;&#039;&#039; (pre-releases) stoney cloud Installation instead, execute the following command:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
echo &#039;PORTAGE_BINHOST=&amp;quot;http://packages.stoney-cloud.org/stoney-cloud/pre-releases/1.2/packages&amp;quot;&#039; &amp;gt;&amp;gt; /etc/portage/make.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; Even a pre-release ISO may result in a stable installation, depending on when it was generated in the release cycle. Please verify by executing &amp;lt;code&amp;gt;git branch&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;/usr/portage&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/var/lib/layman/foss-cloud&amp;lt;/code&amp;gt; whether this is the case, and [[stoney_cloud:_Switch_to_testing_branch|switch to the testing branch]] if needed (that is: if the branch displayed does not contain the words &amp;lt;code&amp;gt;pre&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;testing&amp;lt;/code&amp;gt;. If the branch is empty, that means you have a brand new installation without anything yet. In that case, directly check the configuration files &amp;lt;code&amp;gt;/usr/portage/.git/config&amp;lt;/code&amp;gt; and/or &amp;lt;code&amp;gt;/var/lib/layman/foss-cloud/.git/config&amp;lt;/code&amp;gt; to see which branch it would check out upon &amp;lt;code&amp;gt;emerge --sync&amp;lt;/code&amp;gt; and from where.).&lt;br /&gt;
&lt;br /&gt;
=== &amp;gt;= 1.2.10.4 ===&lt;br /&gt;
&lt;br /&gt;
Execute the following command to register the binary package mirror (since for now there will be only pre-releases, but with better quality than FOSS-Cloud releases):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
echo &#039;PORTAGE_BINHOST=&amp;quot;http://packages.stoney-cloud.org/stoney-cloud/pre-releases/1.2/packages&amp;quot;&#039; &amp;gt;&amp;gt; /etc/portage/make.conf&lt;br /&gt;
&lt;br /&gt;
# Disable the SYNC from rsync since newer portage versions otherwise won&#039;t accept a portage tree via git&lt;br /&gt;
sed -i -e &#039;s|^SYNC|#SYNC|&#039; /etc/portage/make.conf&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Update ==&lt;br /&gt;
&lt;br /&gt;
=== Updating from 1.2.10.7 or earlier to 1.2.10.8_rc4 or newer ===&lt;br /&gt;
&lt;br /&gt;
A complete rebuild of all packages was required, therefore the update guide is different:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
emerge --sync&lt;br /&gt;
&lt;br /&gt;
emerge -eK world -va&lt;br /&gt;
 &lt;br /&gt;
# sst-libvirt-hooks is not part of the stoney-cloud anymore since it requires further configuration&lt;br /&gt;
# make sure that it still gets updated and not removed later, if you have it installed and enabled&lt;br /&gt;
emerge -K app-emulation/sst-libvirt-hooks&lt;br /&gt;
 &lt;br /&gt;
dispatch-conf&lt;br /&gt;
 &lt;br /&gt;
# Switch runtime switchable options&lt;br /&gt;
eselect python set python3.3&lt;br /&gt;
eselect php set cli php5.5&lt;br /&gt;
eselect php set apache2 php5.5&lt;br /&gt;
gcc-config x86_64-pc-linux-gnu-4.7.3&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
During the dispatch-conf the following may appear:&lt;br /&gt;
* /etc/libvirt/libvirt.conf: you may get the suggestion to remove almost all content. Quit dispatch-conf and do: &amp;lt;code&amp;gt;rm /etc/libvirt/._mrg*&amp;lt;/code&amp;gt; and start dispatch-conf again.&lt;br /&gt;
* /etc/libvirt/libvirt.conf: merge all whitespace/comment changes but make sure you don&#039;t overwrite the &amp;lt;code&amp;gt;listen_addr&amp;lt;/code&amp;gt;&lt;br /&gt;
* /etc/portage/make.conf: merge all changes beside the &amp;lt;code&amp;gt;PORTAGE_BINHOST&amp;lt;/code&amp;gt;&lt;br /&gt;
* /var/www/localhost/htdocs/vm-manager/vm_config.php: merge the versions, newly added lines and comments. Avoid changes on sstSourceHostName array&lt;br /&gt;
&lt;br /&gt;
To make sure everything works, reboot and then cleanup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
emerge --depclean -va&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* If the cleanup fails stating that &amp;lt;code&amp;gt;Locale-gettext&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;dev-libs/boost&amp;lt;/code&amp;gt; depends on some version of perl, reinstall that package manually once and try again:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
emerge -1Kva dev-libs/boost Locale-gettext&lt;br /&gt;
&lt;br /&gt;
# same for autoconf-/automake-wrapper if host was used to build stuff:&lt;br /&gt;
emerge -1K sys-devel/autoconf-wrapper sys-devel/automake-wrapper&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;WARNING&#039;&#039;&#039;: this also removes the current kernel. If you want to play it safe, reboot first, then depclean, then reboot again&lt;br /&gt;
* Rebuilde separately installed perl modules and remove traces of the old perl version:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
perl-cleaner --all -- -va&lt;br /&gt;
rm -rf /usr/lib64/perl5/{vendor_perl,}/5.12.4&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Emulator ====&lt;br /&gt;
* u=devices,sstVirtualMachine=*,ou=virtual machines,ou=virtualization,ou=services,o=stepping-stone,c=ch&lt;br /&gt;
&lt;br /&gt;
Change&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sstEmulator: /usr/bin/qemu-kvm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
to&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sstEmulator: /usr/bin/qemu-system-x86_64&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Source Port ====&lt;br /&gt;
* sstDisk=vda,ou=devices,sstVirtualMachine=*,ou=virtual machines,ou=virtualization,ou=services,dc=stoney-cloud,dc=org&lt;br /&gt;
* sstDisk=vdb,ou=devices,sstVirtualMachine=*,ou=virtual machines,ou=virtualization,ou=services,dc=stoney-cloud,dc=org&lt;br /&gt;
&lt;br /&gt;
Add&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sstSourcePort: 24007&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Firewall / Subversion ====&lt;br /&gt;
If you are using our firewall scripts (libvirt-hooks based), you&#039;ll also have to upgrade subversion (on all the stoney cloud nodes):&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
cd /usr/local/scripts/netfilter/local/chains/vms&lt;br /&gt;
svn upgrade&lt;br /&gt;
cd /usr/local/scripts/netfilter/local/chains/$(hostname -s)&lt;br /&gt;
svn upgrade&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Regular Update ===&lt;br /&gt;
&lt;br /&gt;
Makes sure, your local portage tree is updated:&lt;br /&gt;
 emerge --sync&lt;br /&gt;
&lt;br /&gt;
Now you can make sure, that you&#039;ve got the current stoney cloud version installed:&lt;br /&gt;
 emerge -KuDva virtual/foss-cloud&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Local copy of remote index is up-to-date and will be used.&lt;br /&gt;
&lt;br /&gt;
These are the packages that would be merged, in order:&lt;br /&gt;
&lt;br /&gt;
Calculating dependencies... done!&lt;br /&gt;
&lt;br /&gt;
Total: 0 packages, Size of downloads: 0 kB&lt;br /&gt;
&lt;br /&gt;
 * virtual/foss-cloud-1.2.10.4&lt;br /&gt;
&lt;br /&gt;
Would you like to add these packages to your world favorites? [Yes/No] &#039;&#039;&#039;no&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you have updated you stoney cloud, you might want to sanely update your configuration files after emerging new packages (including updates):&lt;br /&gt;
 dispatch-conf&lt;br /&gt;
&lt;br /&gt;
== Installing Software Examples ==&lt;br /&gt;
Per default, the stoney cloud expects you to install binary packages. So if you don&#039;t pass any special parameters to the emerge command, the binary package (if it exists) will be used.&lt;br /&gt;
&lt;br /&gt;
=== Binary Package ===&lt;br /&gt;
Per default, the stoney cloud expects you to install binary packages, which can be seen with &#039;&#039;&#039;[binary   R    ]&#039;&#039;&#039; output.&lt;br /&gt;
 emerge -va git&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
These are the packages that would be merged, in order:&lt;br /&gt;
&lt;br /&gt;
Calculating dependencies... done!&lt;br /&gt;
[binary   R    ] dev-vcs/git-1.7.12.4  USE=&amp;quot;blksha1 curl iconv nls pcre perl threads webdav -cgi -cvs -doc -emacs -gpg -gtk -highlight (-ppcsha1) -python -subversion {-test} -tk -xinetd&amp;quot; 5,295 kB&lt;br /&gt;
&lt;br /&gt;
Total: 1 package (1 reinstall, 1 binary), Size of downloads: 5,295 kB&lt;br /&gt;
&lt;br /&gt;
Would you like to merge these packages? [Yes/No] no&lt;br /&gt;
&lt;br /&gt;
Quitting.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Force Non-Binary Package ===&lt;br /&gt;
If you force a non-binary package, the output will be in the form of &#039;&#039;&#039;[ebuild   R    ]&#039;&#039;&#039;.&lt;br /&gt;
 FEATURES=&amp;quot;-getbinpkg&amp;quot; emerge -va git&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
These are the packages that would be merged, in order:&lt;br /&gt;
&lt;br /&gt;
Calculating dependencies... done!&lt;br /&gt;
[ebuild  N     ] app-arch/cpio-2.11  USE=&amp;quot;nls&amp;quot; 995 kB&lt;br /&gt;
[ebuild   R    ] dev-vcs/git-1.7.12.4  USE=&amp;quot;blksha1 curl iconv nls pcre perl threads webdav -cgi -cvs -doc -emacs -gpg -gtk -highlight (-ppcsha1) -python -subversion {-test} -tk -xinetd&amp;quot; 4,523 kB&lt;br /&gt;
&lt;br /&gt;
Total: 2 packages (1 new, 1 reinstall), Size of downloads: 5,518 kB&lt;br /&gt;
&lt;br /&gt;
Would you like to merge these packages? [Yes/No] &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== No Binary Package Exists ===&lt;br /&gt;
The following example shows you a package with no existing binary package, therefore the package must be compiled on the fly, shown with &#039;&#039;&#039;[ebuild  N     ]&#039;&#039;&#039;.&lt;br /&gt;
 emerge -va htop&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Local copy of remote index is up-to-date and will be used.&lt;br /&gt;
&lt;br /&gt;
These are the packages that would be merged, in order:&lt;br /&gt;
&lt;br /&gt;
Calculating dependencies... done!&lt;br /&gt;
[ebuild  N     ] sys-process/htop-1.0.2  USE=&amp;quot;unicode -openvz -vserver&amp;quot; 380 kB&lt;br /&gt;
&lt;br /&gt;
Total: 1 package (1 new), Size of downloads: 380 kB&lt;br /&gt;
&lt;br /&gt;
Would you like to merge these packages? [Yes/No] &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Multi-Node Installation ==&lt;br /&gt;
Follow the [[Multi-Node_Installation#Specialized_Installation | Specialized Installation]] Guide.&lt;br /&gt;
&lt;br /&gt;
== Basic Testing Steps ==&lt;br /&gt;
Get your stoney cloud image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=1.2.10.7        # stoney cloud version&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://packages.stoney-cloud.org/stoney-cloud/pre-releases/1.2/iso/foss-cloud-installer-${version}.iso&lt;br /&gt;
chown apache:vm-storage foss-cloud-installer-${version}.iso&lt;br /&gt;
chmod 644 foss-cloud-installer-${version}.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get the [http://www.sysresccd.org/SystemRescueCd_Homepage SystemRescueCd] ISO:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=4.5.1       # SystemRescueCd version&lt;br /&gt;
sha256=&amp;quot;4fda2fce55a46c7b258fba10c88a4a337821c8b801a8cd3c344cc223a9c4436d&amp;quot; # SHA256 checksum of the ISO&lt;br /&gt;
isoFile=&amp;quot;systemrescuecd-x86-${version}.iso&amp;quot;&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
&lt;br /&gt;
wget http://sourceforge.net/projects/systemrescuecd/files/sysresccd-x86/${version}/${isoFile}&lt;br /&gt;
&lt;br /&gt;
# Check that the file was downloaded correctly&lt;br /&gt;
echo &amp;quot;${sha256} ${isoFile}&amp;quot; | sha256sum -c -&lt;br /&gt;
&lt;br /&gt;
chown apache:vm-storage ${isoFile}&lt;br /&gt;
chmod 644 ${isoFile}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get a Fedora ISO image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=21        # Fedora version&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://mirror.switch.ch/ftp/mirror/fedora/linux/releases/${version}/Server/x86_64/iso/Fedora-Server-netinst-x86_64-${version}.iso&lt;br /&gt;
chown apache:vm-storage Fedora-Server-netinst-x86_64-${version}.iso&lt;br /&gt;
chmod 644 Fedora-Server-netinst-x86_64-${version}.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Lernstick (Test):&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://www.imedias.ch/dateien/lernstick-testversion/lernstick_debian7_2013-12-12.iso&lt;br /&gt;
chown apache:vm-storage lernstick_debian7_2013-12-12.iso&lt;br /&gt;
chmod 644 lernstick_debian7_2013-12-12.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get your debian image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=8.0.0        # Debian version&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://cdimage.debian.org/debian-cd/${version}/amd64/iso-cd/debian-${version}-amd64-netinst.iso&lt;br /&gt;
chown apache:vm-storage debian-${version}-amd64-netinst.iso&lt;br /&gt;
chmod 644 debian-${version}-amd64-netinst.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get your ubuntu desktop image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=14.04        # ubuntu version&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://mirror.switch.ch/ftp/mirror/ubuntu-cdimage/${version}/ubuntu-${version}-desktop-amd64.iso&lt;br /&gt;
chown apache:vm-storage ubuntu-${version}-desktop-amd64.iso&lt;br /&gt;
chmod 644 ubuntu-${version}-desktop-amd64.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get your ubuntu server image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
version=14.04        # ubuntu version&lt;br /&gt;
&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://mirror.switch.ch/ftp/mirror/ubuntu-cdimage/${version}/ubuntu-${version}-server-amd64.iso&lt;br /&gt;
chown apache:vm-storage ubuntu-${version}-server-amd64.iso&lt;br /&gt;
chmod 644 ubuntu-${version}-server-amd64.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Get a Windows 2012 Server R2 ISO image:&lt;br /&gt;
&amp;lt;source lang=&#039;bash&#039;&amp;gt;&lt;br /&gt;
cd /var/virtualization/iso-choosable/&lt;br /&gt;
wget http://care.dlservice.microsoft.com/dl/download/6/2/A/62A76ABB-9990-4EFC-A4FE-C7D698DAEB96/9600.17050.WINBLUE_REFRESH.140317-1640_X64FRE_SERVER_EVAL_EN-US-IR3_SSS_X64FREE_EN-US_DV9.ISO -O windows_server_2012_r2_64bit_en.iso&lt;br /&gt;
chown apache:vm-storage windows_server_2012_r2_64bit_en.iso&lt;br /&gt;
chmod 644 windows_server_2012_r2_64bit_en.iso&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you need the newest Windows Drivers ISO image, visit https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/&lt;br /&gt;
&lt;br /&gt;
Set three network ranges under https://192.168.140.10/vm-manager/subnet/index.html&lt;br /&gt;
 192.168.140.64&lt;br /&gt;
 26&lt;br /&gt;
 Template Range&lt;br /&gt;
 template&lt;br /&gt;
&lt;br /&gt;
 192.168.140.128&lt;br /&gt;
 26&lt;br /&gt;
 Persistent Range&lt;br /&gt;
 persistent&lt;br /&gt;
&lt;br /&gt;
 192.168.140.192&lt;br /&gt;
 26&lt;br /&gt;
 Dynamic Range&lt;br /&gt;
 dynamic&lt;br /&gt;
&lt;br /&gt;
Add the three newly creates network ranges to the VM-Pools under https://192.168.140.10/vm-manager/vmPool/index.html&lt;br /&gt;
&lt;br /&gt;
Create a Virtual Machine Profile under https://192.168.140.10/vm-manager/vmProfile/create.html&lt;br /&gt;
&lt;br /&gt;
Create a Virtual Machine Template under https://192.168.140.10/vm-manager/vmTemplate/create.html and install a basic operating system.&lt;br /&gt;
&lt;br /&gt;
Create a persistent Virtual Machine from the newly created Virtual Machine Template.&lt;br /&gt;
&lt;br /&gt;
== Known Issues ==&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;br /&gt;
[[Category:stoney cloud]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-2&amp;diff=4214</id>
		<title>MediaWiki:Revreview-version-2</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-2&amp;diff=4214"/>
		<updated>2014-08-26T08:50:08Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;v1&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;v1&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-0&amp;diff=4213</id>
		<title>MediaWiki:Revreview-version-0</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-0&amp;diff=4213"/>
		<updated>2014-08-26T08:49:54Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Draft&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Draft&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-1&amp;diff=4212</id>
		<title>MediaWiki:Revreview-version-1</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-1&amp;diff=4212"/>
		<updated>2014-08-26T08:49:40Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;v0.9&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-1&amp;diff=4211</id>
		<title>MediaWiki:Revreview-version-1</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version-1&amp;diff=4211"/>
		<updated>2014-08-26T08:49:12Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Draft&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Draft&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version&amp;diff=4210</id>
		<title>MediaWiki:Revreview-version</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-version&amp;diff=4210"/>
		<updated>2014-08-26T08:48:45Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Version&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Version&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-accuracy-0&amp;diff=4208</id>
		<title>MediaWiki:Revreview-accuracy-0</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Revreview-accuracy-0&amp;diff=4208"/>
		<updated>2014-08-26T08:31:24Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Draft&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Draft&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3913</id>
		<title>Template:Documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3913"/>
		<updated>2014-08-22T07:44:42Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Reverted edits by Administrator (talk) to last revision by A3li&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{documentation/core2&lt;br /&gt;
| heading = {{{heading|¬}}}   &amp;lt;!--Empty but defined means no header--&amp;gt;&lt;br /&gt;
| heading-style = {{{heading-style|}}}&lt;br /&gt;
| content = {{{content|}}}&lt;br /&gt;
| link box = {{{link box|}}}   &amp;lt;!--So &amp;quot;link box=off&amp;quot; works--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Some namespaces must have the /doc, /sandbox and /testcases &lt;br /&gt;
    in talk space--&amp;gt;&lt;br /&gt;
| docspace =&lt;br /&gt;
  {{#switch: {{SUBJECTSPACE}}&lt;br /&gt;
  | {{ns:0}}&lt;br /&gt;
  | {{ns:File}}&lt;br /&gt;
  | {{ns:MediaWiki}}&lt;br /&gt;
  | {{ns:Category}} = {{TALKSPACE}}&lt;br /&gt;
  | #default = {{SUBJECTSPACE}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
| 1 = {{{1|}}}   &amp;lt;!--Other docname, if fed--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--The namespace is added in /core2--&amp;gt;&lt;br /&gt;
| template page = &lt;br /&gt;
  {{#switch: {{SUBPAGENAME}}&lt;br /&gt;
  | sandbox&lt;br /&gt;
  | testcases = {{BASEPAGENAME}}&lt;br /&gt;
  | #default = {{PAGENAME}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;!--End of green doc box--&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Add categories and interwikis to the /doc subpage, not here! --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3912</id>
		<title>Template:Documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3912"/>
		<updated>2014-08-22T07:43:23Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Documentation/core2&lt;br /&gt;
| heading = {{{heading|¬}}}   &amp;lt;!--Empty but defined means no header--&amp;gt;&lt;br /&gt;
| heading-style = {{{heading-style|}}}&lt;br /&gt;
| content = {{{content|}}}&lt;br /&gt;
| link box = {{{link box|}}}   &amp;lt;!--So &amp;quot;link box=off&amp;quot; works--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Some namespaces must have the /doc, /sandbox and /testcases &lt;br /&gt;
    in talk space--&amp;gt;&lt;br /&gt;
| docspace =&lt;br /&gt;
  {{#switch: {{SUBJECTSPACE}}&lt;br /&gt;
  | {{ns:0}}&lt;br /&gt;
  | {{ns:File}}&lt;br /&gt;
  | {{ns:MediaWiki}}&lt;br /&gt;
  | {{ns:Category}} = {{TALKSPACE}}&lt;br /&gt;
  | #default = {{SUBJECTSPACE}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
| 1 = {{{1|}}}   &amp;lt;!--Other docname, if fed--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--The namespace is added in /core2--&amp;gt;&lt;br /&gt;
| template page = &lt;br /&gt;
  {{#switch: {{SUBPAGENAME}}&lt;br /&gt;
  | sandbox&lt;br /&gt;
  | testcases = {{BASEPAGENAME}}&lt;br /&gt;
  | #default = {{PAGENAME}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;!--End of green doc box--&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Add categories and interwikis to the /doc subpage, not here! --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation/core2&amp;diff=3911</id>
		<title>Template:Documentation/core2</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation/core2&amp;diff=3911"/>
		<updated>2014-08-22T07:42:15Z</updated>

		<summary type="html">&lt;p&gt;Administrator: 4 revisions from :gentoo-wiki:Template:Documentation/core2: import from wiki.gentoo.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;includeonly&amp;gt;{{documentation/core&lt;br /&gt;
| heading = {{{heading|¬}}}   &amp;lt;!--Empty but defined means no header--&amp;gt;&lt;br /&gt;
| heading-style = {{{heading-style|}}}&lt;br /&gt;
| content = {{{content|}}}&lt;br /&gt;
| link box = {{{link box|}}}   &amp;lt;!--So &amp;quot;link box=off&amp;quot; works--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
| docpage = &lt;br /&gt;
  {{#if: {{{1|}}}&lt;br /&gt;
  | {{{1|}}}&lt;br /&gt;
  | {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/doc&lt;br /&gt;
  }}&lt;br /&gt;
| doc exist = &lt;br /&gt;
  {{#ifexist: &lt;br /&gt;
    {{#if: {{{1|}}}&lt;br /&gt;
    | {{{1|}}}   &amp;lt;!--Other docname fed--&amp;gt;&lt;br /&gt;
    | {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/doc&lt;br /&gt;
    }}&lt;br /&gt;
  | yes&lt;br /&gt;
  }}&lt;br /&gt;
| docname fed =&lt;br /&gt;
  {{#if: {{{1|}}}&lt;br /&gt;
  | yes&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
| sandbox = &lt;br /&gt;
  {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/sandbox&lt;br /&gt;
| testcases = &lt;br /&gt;
  {{{docspace|{{NAMESPACE}}}}}:{{{template page|{{PAGENAME}}}}}/testcases&lt;br /&gt;
&lt;br /&gt;
| template page = &lt;br /&gt;
  {{NAMESPACE}}:{{{template page|{{PAGENAME}}}}}&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Template cores]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:MessageBox&amp;diff=3906</id>
		<title>Template:MessageBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:MessageBox&amp;diff=3906"/>
		<updated>2014-08-22T07:42:00Z</updated>

		<summary type="html">&lt;p&gt;Administrator: 5 revisions from :gentoo-wiki:Template:MessageBox: import from wiki.gentoo.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;gw-msgbox&amp;quot; style=&amp;quot;border: 1px solid {{{color|#333}}}; background-color: {{{bgcol|#F3F3F3}}}; overflow: auto&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;gw-msgbox-title&amp;quot; style=&amp;quot;margin: -3px 3px -3px -3px; background-color: {{{color|#333}}}; color: {{{titlecol|white}}}&amp;quot;&amp;gt;{{{1}}}&amp;lt;/div&amp;gt;&amp;lt;div class=&amp;quot;gw-msgbox-content&amp;quot;&amp;gt;{{{2}}}&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Warning/core&amp;diff=3900</id>
		<title>Template:Warning/core</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Warning/core&amp;diff=3900"/>
		<updated>2014-08-22T07:41:18Z</updated>

		<summary type="html">&lt;p&gt;Administrator: 1 revision from :gentoo-wiki:Template:Warning/core: import from wiki.gentoo.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{MessageBox|{{{1}}}|{{{2}}}|color=#A40000}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Category:Template cores]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3898</id>
		<title>Template:Documentation</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Documentation&amp;diff=3898"/>
		<updated>2014-08-22T07:41:00Z</updated>

		<summary type="html">&lt;p&gt;Administrator: 2 revisions from :gentoo-wiki:Template:Documentation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{documentation/core2&lt;br /&gt;
| heading = {{{heading|¬}}}   &amp;lt;!--Empty but defined means no header--&amp;gt;&lt;br /&gt;
| heading-style = {{{heading-style|}}}&lt;br /&gt;
| content = {{{content|}}}&lt;br /&gt;
| link box = {{{link box|}}}   &amp;lt;!--So &amp;quot;link box=off&amp;quot; works--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Some namespaces must have the /doc, /sandbox and /testcases &lt;br /&gt;
    in talk space--&amp;gt;&lt;br /&gt;
| docspace =&lt;br /&gt;
  {{#switch: {{SUBJECTSPACE}}&lt;br /&gt;
  | {{ns:0}}&lt;br /&gt;
  | {{ns:File}}&lt;br /&gt;
  | {{ns:MediaWiki}}&lt;br /&gt;
  | {{ns:Category}} = {{TALKSPACE}}&lt;br /&gt;
  | #default = {{SUBJECTSPACE}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
| 1 = {{{1|}}}   &amp;lt;!--Other docname, if fed--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--The namespace is added in /core2--&amp;gt;&lt;br /&gt;
| template page = &lt;br /&gt;
  {{#switch: {{SUBPAGENAME}}&lt;br /&gt;
  | sandbox&lt;br /&gt;
  | testcases = {{BASEPAGENAME}}&lt;br /&gt;
  | #default = {{PAGENAME}}&lt;br /&gt;
  }}&lt;br /&gt;
&lt;br /&gt;
}}&amp;lt;!--End of green doc box--&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Add categories and interwikis to the /doc subpage, not here! --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Template:Warning&amp;diff=3895</id>
		<title>Template:Warning</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Template:Warning&amp;diff=3895"/>
		<updated>2014-08-22T07:40:38Z</updated>

		<summary type="html">&lt;p&gt;Administrator: 13 revisions from :gentoo-wiki:Template:Warning: import from wiki.gentoo.org&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Warning/core|Warning|{{{1}}}|color=#A40000}}&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3254</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3254"/>
		<updated>2014-04-21T17:38:28Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Infrastructure|Infrastructure&lt;br /&gt;
** Category:stoney cloud|stoney cloud&lt;br /&gt;
** Category:Self-Service Modules|Self-Service Modules &lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3167</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3167"/>
		<updated>2014-03-11T09:09:00Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Provisioning Modules|Provisioning Modules&lt;br /&gt;
** Category:Requirements|Requirements&lt;br /&gt;
** Category:REST API|REST API&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Self-Service Modules|Self-Service Modules&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Category:Mapping_(REST_-_LDAP)&amp;diff=2657</id>
		<title>Category:Mapping (REST - LDAP)</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Category:Mapping_(REST_-_LDAP)&amp;diff=2657"/>
		<updated>2014-01-08T11:50:29Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Category: Development&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category: Development]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2400</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2400"/>
		<updated>2013-12-24T07:54:55Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Provisioning Modules|Provisioning Modules&lt;br /&gt;
** Category:Requirements|Requirements&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Self-Service Modules|Self-Service Modules&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2375</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2375"/>
		<updated>2013-12-23T16:00:20Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Requirements|Requirements&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Self-Service Modules|Self-Service Modules&lt;br /&gt;
** Category:Service Modules|Service Modules&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2374</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2374"/>
		<updated>2013-12-23T15:58:45Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Modularisation|Modularisation&lt;br /&gt;
*** Category:Self-Service Modules|Self-Service Modules&lt;br /&gt;
*** Category:Service Modules|Service Modules&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Requirements|Requirements&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Category:Self-Service_Modules&amp;diff=2373</id>
		<title>Category:Self-Service Modules</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Category:Self-Service_Modules&amp;diff=2373"/>
		<updated>2013-12-23T15:57:12Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;The functionality of the stoney cloud can be expanded with the help of modules. All the main modules have stoney and their functionality in their names. For example &amp;#039;&amp;#039;&amp;#039;stoney ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The functionality of the stoney cloud can be expanded with the help of modules. All the main modules have stoney and their functionality in their names. For example &#039;&#039;&#039;stoney cloud&#039;&#039;&#039; or &#039;&#039;&#039;stoney safe&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Existing modules ==&lt;br /&gt;
* [[:Category:stoney core|stoney core]]: Main framework responsible for shared functionality (also called self-care):&lt;br /&gt;
** User management, rights and roles.&lt;br /&gt;
** A consistent look and feel between modules.&lt;br /&gt;
** Internationalization.&lt;br /&gt;
* [[:Category:stoney backup|stoney backup]]: A on-line backup service for desktops, servers and virtual machines.&lt;br /&gt;
&lt;br /&gt;
== Work in progress ==&lt;br /&gt;
* [[:Category:stoney vm|stoney vm]]: A simplified sub set of the [[:Category:stoney conductor|stoney conductor]] functionality.&lt;br /&gt;
* [[:Category:stoney mail|stoney mail]]: Mail service with or without group-ware (based on Open-Xchange).&lt;br /&gt;
&lt;br /&gt;
== Planned ==&lt;br /&gt;
* [[:Category:stoney conductor|stoney conductor]]: Responsible for:&lt;br /&gt;
** Storage allocation&lt;br /&gt;
** Network configuration&lt;br /&gt;
** Virtual machine profiles&lt;br /&gt;
** Virtual machine templates&lt;br /&gt;
** Virtual machines&lt;br /&gt;
** Virtual machine snapshots&lt;br /&gt;
** Virtual machine full backups&lt;br /&gt;
* [[:Category:stoney monitor|stoney monitor]]: Monitoring (with Zabbix). ((monitoring, control, inspection, interception, surveillance)&lt;br /&gt;
* [[:Category:stoney orchestra|stoney orchestra]]: Configuration Management (with Puppet).&lt;br /&gt;
* [[:Category:stoney box|stoney box]]: An on-line storage service (will support WebDAV via HTTPS and SFTP, later CIFS as well).&lt;br /&gt;
* [[:Category:stoney web|stoney web]]: Web &amp;amp; Database hosting service (based on Apache and MariaDB).&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_Mapping_(REST_-_LDAP)&amp;diff=2226</id>
		<title>stoney core: Resellers Resource Mapping (REST - LDAP)</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_Mapping_(REST_-_LDAP)&amp;diff=2226"/>
		<updated>2013-12-12T15:05:42Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Category:Mapping (LDAP - JSON)&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Mapping (LDAP - JSON)]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2225</id>
		<title>stoney core: Resellers Resource - REST API</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2225"/>
		<updated>2013-12-12T15:01:49Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Administrator moved page stoney core: REST API - Resellers Resource to stoney core: Resellers Resource - REST API without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Overview =&lt;br /&gt;
The reseller resource represents the bla, bla, bla...&lt;br /&gt;
&lt;br /&gt;
= Reseller resource methods =&lt;br /&gt;
== Reseller creation (POST) ==&lt;br /&gt;
To create a new reseller the client needs to send a HTTP &amp;lt;code&amp;gt;POST&amp;lt;/code&amp;gt; request on the reseller collection resource URI &amp;lt;code&amp;gt;https://api.example.com/v1/resellers&amp;lt;/code&amp;gt; (also see [[Application_Programming_Interface_(API)#Base_URI|Base URI]]), including the associated reseller informations.&lt;br /&gt;
The service will generate a new reseller and responds with a HTTP status code &amp;lt;code&amp;gt;201&amp;lt;/code&amp;gt; (Created) on success. The newly created reseller URI is returned within the HTTP location header, which can be used by the client to gather informations about the new reseller.&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation request message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! HTTP request part&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST &amp;lt;Request-URI&amp;gt; HTTP 1.1&lt;br /&gt;
HOST: &amp;lt;Host&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST /v1/resellers/ HTTP 1.1&lt;br /&gt;
HOST: api.example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request headers&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: application/json&lt;br /&gt;
Content-Type: application/json&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_request_message_body|Request body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation request message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;isCompany&amp;lt;/code&amp;gt;&lt;br /&gt;
|boolean&lt;br /&gt;
|yes&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the reseller represents a company, &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; if it&#039;s an individual person.&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;isCompany: true&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[#billingAddress_object|&amp;lt;code&amp;gt;billingAddress&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|yes&lt;br /&gt;
|An object holding the billing address informations for the given reseller. Refere to the [[#billingAddress_object|billingAddress object table]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;billingAddress&amp;quot;:&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;,&lt;br /&gt;
  &amp;quot;gender&amp;quot;: &#039;m&#039;,&lt;br /&gt;
  &amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;,&lt;br /&gt;
  &amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;,&lt;br /&gt;
  &amp;quot;postalAddress&amp;quot;: &amp;quot;Street Number&amp;quot;,&lt;br /&gt;
  &amp;quot;countryCode&amp;quot;: &amp;quot;CH&amp;quot;,&lt;br /&gt;
  &amp;quot;postalCode&amp;quot;: &amp;quot;Postal Code&amp;quot;,&lt;br /&gt;
  &amp;quot;localityName&amp;quot;: &amp;quot;Locality&amp;quot;,&lt;br /&gt;
  &amp;quot;preferredLanguage&amp;quot;: &amp;quot;en-GB&amp;quot;,&lt;br /&gt;
  &amp;quot;mail&amp;quot;: &amp;quot;name.surname@example.com&amp;quot;,&lt;br /&gt;
  &amp;quot;telephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;websiteURL&amp;quot;: &amp;quot;https://www.example.com/&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;billingAddress_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|billingAddress Object&lt;br /&gt;
!Parameter name&lt;br /&gt;
!Data type&lt;br /&gt;
!Mandatory&lt;br /&gt;
!Description&lt;br /&gt;
!Allowed content&lt;br /&gt;
!Default value&lt;br /&gt;
!Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|no&lt;br /&gt;
|The name of the organization.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;gender&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The gender of the address holder&lt;br /&gt;
|Either &amp;lt;code&amp;gt;f&amp;lt;/code&amp;gt; for female, &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; for male or &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; for neutral.&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;gender&amp;quot;: &amp;quot;f&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;givenName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The given name (first name or forename) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;surname&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The surname (last name or family name) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalAddress&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalAddress&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;countryCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;countryCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;localityName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;localityName&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;preferredLanguage&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;preferredLanguage&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mail&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mail&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;telephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;telephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mobileTelephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;websiteURL&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;websiteURL&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation response message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status Line&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 &amp;lt;HTTP-Status-Code&amp;gt; &amp;lt;HTTP-Status-Message&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 201 Created&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Response headers&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;; charset=&amp;lt;Charset&amp;gt;&lt;br /&gt;
Location: &amp;lt;Location-URI&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: Content-Type: application/json; charset=UTF-8&lt;br /&gt;
Location: https://api.example.com/v1/resellers/4000001&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_response_message_body|Response body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation response message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_creation_response_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Creation Response Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt;&lt;br /&gt;
|integer&lt;br /&gt;
|yes&lt;br /&gt;
|The identification number of the newly created reseller resource.&lt;br /&gt;
|@TODO add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;id: 4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;location&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The location URI of the newly created reseller resource, corresponds with the HTTP location header.&lt;br /&gt;
|@TODO add link to URI RFC &lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;location: https://api.example.com/v1/resellers/4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[Application_Programming_Interface_(API)#Error_codes_and_responses|&amp;lt;code&amp;gt;error&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|no&lt;br /&gt;
|In case of a failure, an error object with the appropriate error messages will be returned. Refer to the [[Application_Programming_Interface_(API)#Error_codes_and_response|Error codes and response chapter]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;error { ... }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Reseller retrieval (GET) ==&lt;br /&gt;
== Reseller update (PUT) ==&lt;br /&gt;
== Reseller partly update (PATCH) ==&lt;br /&gt;
== Reseller deletion (DELETE) ==&lt;br /&gt;
= Links =&lt;br /&gt;
&lt;br /&gt;
[[Category:REST API]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2224</id>
		<title>stoney core: Resellers Resource - REST API</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2224"/>
		<updated>2013-12-12T14:58:33Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Administrator moved page stoney core: REST API - Reseller Resource to stoney core: REST API - Resellers Resource without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Overview =&lt;br /&gt;
The reseller resource represents the bla, bla, bla...&lt;br /&gt;
&lt;br /&gt;
= Reseller resource methods =&lt;br /&gt;
== Reseller creation (POST) ==&lt;br /&gt;
To create a new reseller the client needs to send a HTTP &amp;lt;code&amp;gt;POST&amp;lt;/code&amp;gt; request on the reseller collection resource URI &amp;lt;code&amp;gt;https://api.example.com/v1/resellers&amp;lt;/code&amp;gt; (also see [[Application_Programming_Interface_(API)#Base_URI|Base URI]]), including the associated reseller informations.&lt;br /&gt;
The service will generate a new reseller and responds with a HTTP status code &amp;lt;code&amp;gt;201&amp;lt;/code&amp;gt; (Created) on success. The newly created reseller URI is returned within the HTTP location header, which can be used by the client to gather informations about the new reseller.&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation request message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! HTTP request part&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST &amp;lt;Request-URI&amp;gt; HTTP 1.1&lt;br /&gt;
HOST: &amp;lt;Host&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST /v1/resellers/ HTTP 1.1&lt;br /&gt;
HOST: api.example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request headers&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: application/json&lt;br /&gt;
Content-Type: application/json&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_request_message_body|Request body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation request message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;isCompany&amp;lt;/code&amp;gt;&lt;br /&gt;
|boolean&lt;br /&gt;
|yes&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the reseller represents a company, &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; if it&#039;s an individual person.&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;isCompany: true&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[#billingAddress_object|&amp;lt;code&amp;gt;billingAddress&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|yes&lt;br /&gt;
|An object holding the billing address informations for the given reseller. Refere to the [[#billingAddress_object|billingAddress object table]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;billingAddress&amp;quot;:&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;,&lt;br /&gt;
  &amp;quot;gender&amp;quot;: &#039;m&#039;,&lt;br /&gt;
  &amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;,&lt;br /&gt;
  &amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;,&lt;br /&gt;
  &amp;quot;postalAddress&amp;quot;: &amp;quot;Street Number&amp;quot;,&lt;br /&gt;
  &amp;quot;countryCode&amp;quot;: &amp;quot;CH&amp;quot;,&lt;br /&gt;
  &amp;quot;postalCode&amp;quot;: &amp;quot;Postal Code&amp;quot;,&lt;br /&gt;
  &amp;quot;localityName&amp;quot;: &amp;quot;Locality&amp;quot;,&lt;br /&gt;
  &amp;quot;preferredLanguage&amp;quot;: &amp;quot;en-GB&amp;quot;,&lt;br /&gt;
  &amp;quot;mail&amp;quot;: &amp;quot;name.surname@example.com&amp;quot;,&lt;br /&gt;
  &amp;quot;telephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;websiteURL&amp;quot;: &amp;quot;https://www.example.com/&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;billingAddress_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|billingAddress Object&lt;br /&gt;
!Parameter name&lt;br /&gt;
!Data type&lt;br /&gt;
!Mandatory&lt;br /&gt;
!Description&lt;br /&gt;
!Allowed content&lt;br /&gt;
!Default value&lt;br /&gt;
!Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|no&lt;br /&gt;
|The name of the organization.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;gender&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The gender of the address holder&lt;br /&gt;
|Either &amp;lt;code&amp;gt;f&amp;lt;/code&amp;gt; for female, &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; for male or &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; for neutral.&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;gender&amp;quot;: &amp;quot;f&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;givenName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The given name (first name or forename) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;surname&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The surname (last name or family name) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalAddress&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalAddress&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;countryCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;countryCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;localityName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;localityName&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;preferredLanguage&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;preferredLanguage&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mail&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mail&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;telephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;telephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mobileTelephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;websiteURL&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;websiteURL&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation response message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status Line&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 &amp;lt;HTTP-Status-Code&amp;gt; &amp;lt;HTTP-Status-Message&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 201 Created&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Response headers&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;; charset=&amp;lt;Charset&amp;gt;&lt;br /&gt;
Location: &amp;lt;Location-URI&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: Content-Type: application/json; charset=UTF-8&lt;br /&gt;
Location: https://api.example.com/v1/resellers/4000001&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_response_message_body|Response body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation response message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_creation_response_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Creation Response Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt;&lt;br /&gt;
|integer&lt;br /&gt;
|yes&lt;br /&gt;
|The identification number of the newly created reseller resource.&lt;br /&gt;
|@TODO add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;id: 4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;location&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The location URI of the newly created reseller resource, corresponds with the HTTP location header.&lt;br /&gt;
|@TODO add link to URI RFC &lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;location: https://api.example.com/v1/resellers/4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[Application_Programming_Interface_(API)#Error_codes_and_responses|&amp;lt;code&amp;gt;error&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|no&lt;br /&gt;
|In case of a failure, an error object with the appropriate error messages will be returned. Refer to the [[Application_Programming_Interface_(API)#Error_codes_and_response|Error codes and response chapter]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;error { ... }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Reseller retrieval (GET) ==&lt;br /&gt;
== Reseller update (PUT) ==&lt;br /&gt;
== Reseller partly update (PATCH) ==&lt;br /&gt;
== Reseller deletion (DELETE) ==&lt;br /&gt;
= Links =&lt;br /&gt;
&lt;br /&gt;
[[Category:REST API]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2223</id>
		<title>stoney core: Resellers Resource - REST API</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=stoney_core:_Resellers_Resource_-_REST_API&amp;diff=2223"/>
		<updated>2013-12-12T14:57:23Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Administrator moved page REST API - Reseller Resource to stoney core: REST API - Reseller Resource without leaving a redirect&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Overview =&lt;br /&gt;
The reseller resource represents the bla, bla, bla...&lt;br /&gt;
&lt;br /&gt;
= Reseller resource methods =&lt;br /&gt;
== Reseller creation (POST) ==&lt;br /&gt;
To create a new reseller the client needs to send a HTTP &amp;lt;code&amp;gt;POST&amp;lt;/code&amp;gt; request on the reseller collection resource URI &amp;lt;code&amp;gt;https://api.example.com/v1/resellers&amp;lt;/code&amp;gt; (also see [[Application_Programming_Interface_(API)#Base_URI|Base URI]]), including the associated reseller informations.&lt;br /&gt;
The service will generate a new reseller and responds with a HTTP status code &amp;lt;code&amp;gt;201&amp;lt;/code&amp;gt; (Created) on success. The newly created reseller URI is returned within the HTTP location header, which can be used by the client to gather informations about the new reseller.&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation request message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! HTTP request part&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST &amp;lt;Request-URI&amp;gt; HTTP 1.1&lt;br /&gt;
HOST: &amp;lt;Host&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
POST /v1/resellers/ HTTP 1.1&lt;br /&gt;
HOST: api.example.com&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request headers&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;&lt;br /&gt;
Accept: application/json&lt;br /&gt;
Content-Type: application/json&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_request_message_body|Request body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation request message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;isCompany&amp;lt;/code&amp;gt;&lt;br /&gt;
|boolean&lt;br /&gt;
|yes&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; if the reseller represents a company, &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt; if it&#039;s an individual person.&lt;br /&gt;
|&amp;lt;code&amp;gt;true&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;isCompany: true&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[#billingAddress_object|&amp;lt;code&amp;gt;billingAddress&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|yes&lt;br /&gt;
|An object holding the billing address informations for the given reseller. Refere to the [[#billingAddress_object|billingAddress object table]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;billingAddress&amp;quot;:&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;,&lt;br /&gt;
  &amp;quot;gender&amp;quot;: &#039;m&#039;,&lt;br /&gt;
  &amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;,&lt;br /&gt;
  &amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;,&lt;br /&gt;
  &amp;quot;postalAddress&amp;quot;: &amp;quot;Street Number&amp;quot;,&lt;br /&gt;
  &amp;quot;countryCode&amp;quot;: &amp;quot;CH&amp;quot;,&lt;br /&gt;
  &amp;quot;postalCode&amp;quot;: &amp;quot;Postal Code&amp;quot;,&lt;br /&gt;
  &amp;quot;localityName&amp;quot;: &amp;quot;Locality&amp;quot;,&lt;br /&gt;
  &amp;quot;preferredLanguage&amp;quot;: &amp;quot;en-GB&amp;quot;,&lt;br /&gt;
  &amp;quot;mail&amp;quot;: &amp;quot;name.surname@example.com&amp;quot;,&lt;br /&gt;
  &amp;quot;telephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;+41 00 000 00 00&amp;quot;,&lt;br /&gt;
  &amp;quot;websiteURL&amp;quot;: &amp;quot;https://www.example.com/&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;billingAddress_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|billingAddress Object&lt;br /&gt;
!Parameter name&lt;br /&gt;
!Data type&lt;br /&gt;
!Mandatory&lt;br /&gt;
!Description&lt;br /&gt;
!Allowed content&lt;br /&gt;
!Default value&lt;br /&gt;
!Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;organizationName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|no&lt;br /&gt;
|The name of the organization.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;organizationName&amp;quot;: &amp;quot;Reseller Ltd.&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;gender&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The gender of the address holder&lt;br /&gt;
|Either &amp;lt;code&amp;gt;f&amp;lt;/code&amp;gt; for female, &amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt; for male or &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; for neutral.&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;gender&amp;quot;: &amp;quot;f&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;givenName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The given name (first name or forename) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;givenName&amp;quot;: &amp;quot;Name&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;surname&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The surname (last name or family name) of the address holder.&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;surname&amp;quot;: &amp;quot;Surname&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalAddress&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalAddress&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;countryCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;countryCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;postalCode&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;postalCode&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;localityName&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;localityName&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;preferredLanguage&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;preferredLanguage&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mail&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mail&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;telephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;telephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;mobileTelephoneNumber&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;mobileTelephoneNumber&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;websiteURL&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|&lt;br /&gt;
|@TODO: Add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;&amp;quot;websiteURL&amp;quot;: &amp;quot;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Reseller creation response message ===&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Status Line&lt;br /&gt;
! Content&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Request lines&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 &amp;lt;HTTP-Status-Code&amp;gt; &amp;lt;HTTP-Status-Message&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
| &amp;lt;pre&amp;gt;HTTP/1.1 201 Created&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Response headers&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: &amp;lt;Type&amp;gt;/&amp;lt;Subtype&amp;gt;; charset=&amp;lt;Charset&amp;gt;&lt;br /&gt;
Location: &amp;lt;Location-URI&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|&amp;lt;pre&amp;gt;&lt;br /&gt;
Content-Type: Content-Type: application/json; charset=UTF-8&lt;br /&gt;
Location: https://api.example.com/v1/resellers/4000001&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| [[#Reseller_creation_response_message_body|Response body]]&lt;br /&gt;
| JSON object&lt;br /&gt;
| &amp;lt;pre&amp;gt;{ ... }&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Reseller creation response message body ====&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: 100%;&amp;quot; id=&amp;quot;reseller_creation_response_object&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|+ align=&amp;quot;top&amp;quot; style=&amp;quot;text-align:left;&amp;quot;|Reseller Creation Response Object&lt;br /&gt;
! Parameter name&lt;br /&gt;
! Data type&lt;br /&gt;
! Mandatory&lt;br /&gt;
! Description&lt;br /&gt;
! Allowed content&lt;br /&gt;
! Default value&lt;br /&gt;
! Example&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt;&lt;br /&gt;
|integer&lt;br /&gt;
|yes&lt;br /&gt;
|The identification number of the newly created reseller resource.&lt;br /&gt;
|@TODO add regex&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;id: 4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;location&amp;lt;/code&amp;gt;&lt;br /&gt;
|string&lt;br /&gt;
|yes&lt;br /&gt;
|The location URI of the newly created reseller resource, corresponds with the HTTP location header.&lt;br /&gt;
|@TODO add link to URI RFC &lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;location: https://api.example.com/v1/resellers/4000001&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|[[Application_Programming_Interface_(API)#Error_codes_and_responses|&amp;lt;code&amp;gt;error&amp;lt;/code&amp;gt;]]&lt;br /&gt;
|object&lt;br /&gt;
|no&lt;br /&gt;
|In case of a failure, an error object with the appropriate error messages will be returned. Refer to the [[Application_Programming_Interface_(API)#Error_codes_and_response|Error codes and response chapter]] for more informations.&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&amp;lt;pre&amp;gt;error { ... }&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Reseller retrieval (GET) ==&lt;br /&gt;
== Reseller update (PUT) ==&lt;br /&gt;
== Reseller partly update (PATCH) ==&lt;br /&gt;
== Reseller deletion (DELETE) ==&lt;br /&gt;
= Links =&lt;br /&gt;
&lt;br /&gt;
[[Category:REST API]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1529</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1529"/>
		<updated>2013-10-15T13:21:46Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Modules|Modules&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Requirements|Requirements&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1441</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1441"/>
		<updated>2013-10-13T11:09:51Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Modules|Modules&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Category:Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1372</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1372"/>
		<updated>2013-10-12T17:37:48Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Modules|Modules&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
** Category:Screenshots|Screenshots&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Category:stoney_conductor&amp;diff=1353</id>
		<title>Category:stoney conductor</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Category:stoney_conductor&amp;diff=1353"/>
		<updated>2013-10-12T14:52:01Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;Category:Modules&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Modules]]&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1224</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=1224"/>
		<updated>2013-10-06T13:00:33Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Category:Modules|Modules&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=276</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=276"/>
		<updated>2013-07-31T08:11:04Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Development|Development&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=24</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=24"/>
		<updated>2013-07-18T08:42:45Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
** Category:Transcripts|Transcripts&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Presentations&amp;diff=12</id>
		<title>Presentations</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Presentations&amp;diff=12"/>
		<updated>2013-05-26T17:30:15Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== 2013 ==&lt;br /&gt;
* [[Media:Cloud_Management_und_Automatisierung_2013.pdf | Cloud Management und Automatisierung mit Open Source Software]] in German at the yearly [http://www.stepping-stone.ch/ stepping stone GmbH] event in Bern on the 24th of May 2013.&lt;br /&gt;
&lt;br /&gt;
== 2012 ==&lt;br /&gt;
* [[Media:Open_Source_Cloud_Software_–_Made_in_Switzerland.pdf‎ | Open Source Cloud Software – Made in Switzerland]] in English at the first [http://www.ch-open.ch/events/archiv/2012/190612-open-cloud-day/ Open Cloud Day]] in Bern on the 19th of June 2012.&lt;br /&gt;
* [[Media:Managed_Cloud_Services_2012_two_master.pdf | Managed Cloud Services]] in German at the yearly [http://www.stepping-stone.ch/ stepping stone GmbH] event in Bern on the 11th of May 2012.&lt;br /&gt;
&lt;br /&gt;
== 2011 ==&lt;br /&gt;
* [[Media:FOSS-Cloud.pdf| FOSS-Cloud presentation]] in German at the 20 year Linux party at the [http://www.puzzle.ch/ Puzzle ITC premises] in Bern on the 30th of November 2011.&lt;br /&gt;
* [[Media:2011_Cloud_Computing_-_Chancen_und_Risiken.pdf‎ | Cloud Computing – Chancen und Risiken]] in German at the yearly [http://www.stepping-stone.ch/ stepping stone GmbH] event in Bern on the 13th of May 2011.&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=File:Cloud_Management_und_Automatisierung_2013.pdf&amp;diff=11</id>
		<title>File:Cloud Management und Automatisierung 2013.pdf</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=File:Cloud_Management_und_Automatisierung_2013.pdf&amp;diff=11"/>
		<updated>2013-05-26T17:27:53Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=File:Open_Source_Cloud_Software_%E2%80%93_Made_in_Switzerland.pdf&amp;diff=10</id>
		<title>File:Open Source Cloud Software – Made in Switzerland.pdf</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=File:Open_Source_Cloud_Software_%E2%80%93_Made_in_Switzerland.pdf&amp;diff=10"/>
		<updated>2013-05-26T17:27:19Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=File:Managed_Cloud_Services_2012_two_master.pdf&amp;diff=9</id>
		<title>File:Managed Cloud Services 2012 two master.pdf</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=File:Managed_Cloud_Services_2012_two_master.pdf&amp;diff=9"/>
		<updated>2013-05-26T17:26:57Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=File:FOSS-Cloud.pdf&amp;diff=8</id>
		<title>File:FOSS-Cloud.pdf</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=File:FOSS-Cloud.pdf&amp;diff=8"/>
		<updated>2013-05-26T17:26:20Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=File:2011_Cloud_Computing_-_Chancen_und_Risiken.pdf&amp;diff=7</id>
		<title>File:2011 Cloud Computing - Chancen und Risiken.pdf</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=File:2011_Cloud_Computing_-_Chancen_und_Risiken.pdf&amp;diff=7"/>
		<updated>2013-05-26T17:25:38Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Presentations&amp;diff=6</id>
		<title>Presentations</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Presentations&amp;diff=6"/>
		<updated>2013-05-26T17:21:59Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;*  Open Source Cloud Software – Made in Switzerland in English at the first [http://www.ch-open.ch/event...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* [[Media:Open_Source_Cloud_Software_–_Made_in_Switzerland.pdf‎ | Open Source Cloud Software – Made in Switzerland]] in English at the first [http://www.ch-open.ch/events/archiv/2012/190612-open-cloud-day/ Open Cloud Day]] in Bern on the 19th of June 2012.&lt;br /&gt;
* [[Media:Managed_Cloud_Services_2012_two_master.pdf | Managed Cloud Services]] in German at the yearly [http://www.stepping-stone.ch/ stepping stone GmbH] event in Bern on the 11th of May 2012.&lt;br /&gt;
* [[Media:FOSS-Cloud.pdf| FOSS-Cloud presentation]] in German at the 20 year Linux party at the [http://www.puzzle.ch/ Puzzle ITC premises] in Bern on the 30th of November 2011.&lt;br /&gt;
* [[Media:2011_Cloud_Computing_-_Chancen_und_Risiken.pdf‎ | Cloud Computing – Chancen und Risiken]] in German at the yearly [http://www.stepping-stone.ch/ stepping stone GmbH] event in Bern on the 13th of May 2011.&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=Main_Page&amp;diff=5</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=Main_Page&amp;diff=5"/>
		<updated>2013-05-26T17:20:50Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The stoney cloud is an Open Source Cloud Management turnkey solution to build public and private clouds.&lt;br /&gt;
&lt;br /&gt;
Thanks to the intuitive and simple graphical user interface, the operation of your stoney cloud is a mere child&#039;s play.&lt;br /&gt;
&lt;br /&gt;
= Characteristics =&lt;br /&gt;
* Turnkey solution to build public and private clouds.&lt;br /&gt;
* Runs unmodified Windows and Linux servers as well as desktops on commodity hardware.&lt;br /&gt;
* Persistent and non-persistent virtual machines.&lt;br /&gt;
* User friendly web interface to manage every aspect of your cloud.&lt;br /&gt;
* Backups configurable via web interface.&lt;br /&gt;
* Clear separation between the infrastructure and application and service layer.&lt;br /&gt;
* Integration and provisioning of the [http://www.zabbix.com/ Zabbix] Monitoring solution.&lt;br /&gt;
* Integration and provisioning of the [https://puppetlabs.com/ Puppet] Configuration Management solution.&lt;br /&gt;
* Multi-tenant capable (not yet implemented in the web interface).&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=4</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=4"/>
		<updated>2013-05-26T17:20:15Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Main Page|Home&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=3"/>
		<updated>2013-05-26T17:19:48Z</updated>

		<summary type="html">&lt;p&gt;Administrator: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** Home|Home&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
	<entry>
		<id>https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://wiki.stoney-cloud.org/w/index.php?title=MediaWiki:Sidebar&amp;diff=2"/>
		<updated>2013-05-26T17:14:41Z</updated>

		<summary type="html">&lt;p&gt;Administrator: Created page with &amp;quot;* Navigation ** stoney cloud – Open Source Cloud Management|Home ** Category:Documentation|Documentation ** Presentations|Presentations ** Roadmap|Roadmap * Wiki ** recentch...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Navigation&lt;br /&gt;
** stoney cloud – Open Source Cloud Management|Home&lt;br /&gt;
** Category:Documentation|Documentation&lt;br /&gt;
** Presentations|Presentations&lt;br /&gt;
** Roadmap|Roadmap&lt;br /&gt;
* Wiki&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Administrator</name></author>
	</entry>
</feed>