How to transfer administration data
Administration data is stored in the MongoDB database. It can be useful to extract partially data from a given repository (for instance a testing or a project repository) in order to import it in another MongoDB referential. This document describes the tool that transfers partially contents of the administration data.
Another document describes more globally the strategies available and gives solution for global data transfer.
Transfer administration data with these two tools:
The export profile tool contains a list of entities and properties to be exported (the export is launched from the definition, and generates a JSON file).
The import tool imports the JSON file generated by the export tool into the destination database.
The export tool is very powerful. It enables exporting to different entities in a single step. Be careful to set up your model correctly:
* A model is a list of entities to be exported, defined by:
* The entity name.
* A check box that enables exporting the whole table and a filter expressed in SData format if only some instances are to be exported.
* Optionally, a list of key records to filter the exported data.
* The list of the entity's properties that identifies the instance as a unique key.
* The list of the properties that have to be included in the exported data (not necessarily all of them).
* When entity A includes an association to instances of entity B, we either export A before, but without the association to B, and then the entity B with a reference to A (otherwise, at import time, the reference will not be found). Depending of the type of reference, the order can be reversed.
In this example, we want to import users, groups, badges, roles and security profiles. The data model's corresponding entities and relations:
Considering this data model:
securityProfile
and securityProfileItems
entities. They can be imported first. The various properties in the data model can be given in this entity's profile item attributes list. The corresponding key is code
in both cases.badges
that don't refer to the others. The key will be the code
. Note that here the property role
that contains a list of the roles
using this badge
will not be imported (we will import the list of badges
with the roles
). You must choose to import one of these two relations. If you do both, at execution time, you will get an error (circular reference).roles
that have a relation with badges
and security profiles
(as these entities have already been declared), and are identified by the property code
.groups
that have a relation with the roles
and are identified by the property description
.users
, identified by the login
property, and that has a relation with the roles
, can be imported.You can add a restriction on any entity with SDATA conditions (for instance login -ne 'JOHNDOE'
on the user
entity), but it is also possible to select the export all
checkbox to export all entities.
A good trick to identify the various properties' relations is to use the lookup that allows adding properties in the profile item attributes tab.:
We can see, for instance:
active
, changePassword
are boolean properties that can directly be imported.authentication
, authenticationName
, email
, firstName
, lastName
are properties that are strings (by default) that can directly be imported.adminTeams
, authorTeams
, and memberTeams
are relations to the teams
entity. If you want to import them, you must first import the teams
entity.endpoints
is a relation with the entity userEndpoints
(that also has another relation to the endpoints
entity). If you want to import the user endpoints assignments, you must first import the endpoints
entity. And as this entity is also linked to the x3servers
and applications
, you will also have to import these entities prior to importing the others.Finally, it is important to understand:
Considering the previous steps and explanation, the setup of an import could appear as follows:
Classname | Title | Use standard profile | Filter | Export all |
---|---|---|---|---|
securityProfileItems | securityProfileItem | |||
securityProfiles | securityProfile | |||
badges | badge | |||
roles | role | |||
groups | group | |||
users | user | login ne 'JOHNDOE' |
For every entity, the Profile item key and the Profile item attributes are as follows:
securityProfileItems class | ||
---|---|---|
profile item key | Profile item attributes | |
code | canCreate | |
canDelete | ||
canExecute | ||
canRead | ||
canWrite | ||
code | ||
description | ||
securityProfiles class | ||
profile item key | Profile item attributes | |
code | authoringLevel | |
code | ||
description | ||
profileItems | ||
badges class | ||
profile item key | Profile item attributes | |
code | code | |
keyFunction | ||
keyFunction2 | ||
noCheck | ||
title | ||
roles class | ||
profile item key | Profile item attributes | |
code | badges | |
code | ||
description | ||
securityProfile | ||
groups class | ||
profile item key | Profile item attributes | |
description | description | |
role | ||
users class | ||
profile item key | Profile item attributes | |
login | active | |
authentication | ||
authenticationName | ||
firstName | ||
groups | ||
lastName | ||
login | ||
title |
The file generated by the export tool is a JSON file containing several sections:
"$prototypes": {"securityProfileItem": {"$key": "code","$localized": ["description"]},"securityProfile": {"$key": "code","$localized": ["description"],"profileItems": {"$key": "code","$localized": ["description"]}},"badge": {"$key": "code","$localized": ["title"]},"role": {"$key": "code","$localized": ["description"],"badges": {"$key": "code"},"securityProfile": {"$key": "code"}},"group": {"$key": "description.en-us","$localized": ["description","description"],"role": {"$key": "code"}},"user": {"$key": "login","groups": {"$key": "description.en-us"}}}
This section contains an array of different instances. Every instance is identified by a property called $type
and is followed by all the properties that have been selected.
{"$type": "securityProfile","code": "User","description": "description_a84c663c-e01a-4e5d-a18a-ed1281095a0f","authoringLevel": "user","profileItems": [{"code": "myProfile","description": "description_7c20fcce-edd3-4017-a6a3-36e3d8650b9e","canCreate": false,"canRead": true,"canWrite": true,"canDelete": false,"canExecute": false},{"code": "users","description": "description_9e93f98f-57c7-451f-83f2-4f0fd5b868c6","canCreate": false,"canRead": false,"canWrite": false,"canDelete": false,"canExecute": false},...{"code": "exportData","description": "description_46bb92e2-c0f3-41f6-b6cf-a32398595110","canCreate": false,"canRead": false,"canWrite": false,"canDelete": false,"canExecute": false}]}
badge
entity:{"$type": "badge","code": "ERPTRAN","title": "title_963b8544-7fe2-4b99-8b95-ff25b6e77df2","keyFunction": "GESEXS,GESPSH","keyFunction2": "GESEXS, GESPSH"}
role
entity:{"$type": "role","code": "ERP-APACCMAN","description": "description_7e6964a5-7d2a-47f7-9d24-95c07e60dbad","badges": ["ERPFIN"],"securityProfile": "User"}
group
entity:{"$type": "group","description": "description_9ef06d69-dc47-4f73-ad45-a18e569aacf2","role": "ADMIN_ROLE"}
users
entity:{"$type": "user","login": "ADMNA","title": "mr","firstName": "NA","lastName": "System Administrator","active": true,"groups": ["description_54c329ea-a303-4fb6-a76c-fe863d65452b","description_af4172b4-4766-4794-b1e4-350baca31ce5"]}
This section contains the translation, for every language, of the localized descriptions defined in the previous data feed by a string "ffff_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
where ffff
is the property name (usually title
or description
) and xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
is a unique id that identifies an instance.
"$localization": {"de-de": {"description_a84c663c-e01a-4e5d-a18a-ed1281095a0f": "Benutzer","description_7c20fcce-edd3-4017-a6a3-36e3d8650b9e": "Persönlichen Profil","title_963b8544-7fe2-4b99-8b95-ff25b6e77df2": "Benutzer Transaktionen",...},"en-en": {"description_a84c663c-e01a-4e5d-a18a-ed1281095a0f": "User","description_7c20fcce-edd3-4017-a6a3-36e3d8650b9e": "Personal profile","title_963b8544-7fe2-4b99-8b95-ff25b6e77df2": "User Transactions",...},"fr-fr": {"description_a84c663c-e01a-4e5d-a18a-ed1281095a0f": "Utilisateur","description_7c20fcce-edd3-4017-a6a3-36e3d8650b9e": "Profil personnel","title_963b8544-7fe2-4b99-8b95-ff25b6e77df2": "Transactions utilisateur",...},...}
A very simple way to get a complete description of an entity is to use $prototype URL directly from the browser:
http://my_server:service/sdata/syracuse/collaboration/syracuse/$prototypes('entity.$details')
where :
my_server
and my_service
define the node.js server where the user is connected.entity
is the entity to be displayed.For instance, if you use:
`http://my_server:service/sdata/syracuse/collaboration/$prototypes('user.$details')
you will get the following JSON description:
{"$type": "application/json","$prototype": "{$baseUrl}/$prototypes('{$representation}.$details')","$url": "{$baseUrl}/{$pluralType}('{$key}')","$shortUrl": "{$baseUrl}/{$pluralType}('{$key}')","$value": "{login}","$title": "{firstName} {lastName}","$key": "{$uuid}","$description": "{firstName}'s profile","$pluralType": "users","$representation": "user","$properties": {"login": {"$title": "Login","$displayLength": 8,"$isUnique": true,"$isMandatory": true,"$capabilities": "sort,filter,alphaTab","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}"}},"$type": "application/x-string"},"title": {"$title": "Title","$displayLength": 4,"$capabilities": "sort,filter,alphaTab","$type": "application/x-choice","$value": {"$type": "application/x-string","$enum": [{"$value": "mr","$title": "Mr."},{"$value": "mrs","$title": "Mrs."}]}},"firstName": {"$title": "First name","$displayLength": 12,"$capabilities": "sort,filter,alphaTab","$type": "application/x-string"},"lastName": {"$title": "Last name","$displayLength": 12,"$isMandatory": true,"$capabilities": "sort,filter,alphaTab","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}"}},"$type": "application/x-string"},"active": {"$title": "Active","$capabilities": "sort,filter","$type": "application/x-boolean"},"authentication": {"$title": "Authentication","$capabilities": "sort,filter,alphaTab","$type": "application/x-choice","$value": {"$type": "application/x-string","$enum": [{"$value": "","$title": "Standard"},{"$value": "db","$title": "DB"},{"$value": "ldap","$title": "LDAP"},{"$value": "oauth2","$title": "OAuth2"}]}},"authenticationName": {"$title": "Authentication name","$capabilities": "sort,filter,alphaTab","$type": "application/x-string"},"email": {"$title": "Email","$displayLength": 30,"$capabilities": "sort,filter,alphaTab","$type": "application/x-string","$format": "$email"},"photo": {"$title": "Photo","$capabilities": "","$type": "image","$url": "{$baseUrl}/{$pluralType}('{$key}')/photo"},"infov6": {"$title": "Connection information for V6","$capabilities": "sort,filter","$type": "application/x-boolean"},"userv6": {"$title": "User","$capabilities": "sort,filter,alphaTab","$type": "application/x-string"},"changePassword": {"$title": "Require password change","$capabilities": "sort,filter","$type": "application/x-boolean","$isNullable": true},"explorer": {"$title": "Explorer","$capabilities": "sort,filter","$type": "application/x-graph","$format": "d3.nodeChart","$url": "{$baseUrl}/{$pluralType}('{$key}')/$graphs/explorer","$linkCategories": [{"$name": "groups","$title": "Groups"},{"$name": "groups.endPoints","$title": "Endpoints"},{"$name": "groups.role","$title": "Role"},{"$name": "adminTeams","$title": "Teams administrator"},{"$name": "authorTeams","$title": "Teams author"},{"$name": "memberTeams","$title": "Teams member"}],"$nodeCategories": [{"$name": "user","$title": "Users","$selected": true,"$prototype": {"$properties": {"$value": "{login}"}}},{"$name": "group","$title": "Groups","$selected": true,"$prototype": {"$properties": {"$value": "{description}"},"$links": {"$default": {"$url": "{$baseUrl}/groups('{$uuid}')?representation=group.$details","$type": "json"}}}},{"$name": "endPoint","$title": "Endpoints","$selected": false,"$prototype": {"$properties": {"$value": "{description}"},"$links": {"$default": {"$url": "{$baseUrl}/endPoints('{$uuid}')?representation=endPoint.$details","$type": "json"}}}},{"$name": "role","$title": "Roles","$selected": false,"$prototype": {"$properties": {"$value": "{description}"},"$links": {"$default": {"$url": "{$baseUrl}/roles('{$uuid}')?representation=role.$details","$type": "json"}}}},{"$name": "team","$title": "Teams","$selected": true,"$prototype": {"$properties": {"$value": "{description}"},"$links": {"$default": {"$url": "{$baseUrl}/teams('{$uuid}')?representation=team.$details","$type": "json"}}}}]},"groups": {"$title": "Groups","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/x-reference","$item": {"$url": "{$baseUrl}/groups('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/groups('{$key}')","$value": "{description}","$description": "Access administration, groups associate users with roles and endpoints","$key": "{$uuid}","$properties": {"description": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "group","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/groups('{$key}')?representation=group.$details&role={$role}"}}}}},"endpoints": {"$title": "Endpoints login","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/json","$prototype": "{$baseUrl}/$prototypes('{$representation}.$details')","$key": "{$uuid}","$pluralType": "userEndpoints","$representation": "userEndpoint","$properties": {"login": {"$title": "User login","$displayLength": 10,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"endpoint": {"$title": "Endpoint","$displayLength": 15,"$isMandatory": true,"$capabilities": "sort","$type": "application/x-reference","$item": {"$url": "{$baseUrl}/endPoints('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/endPoints('{$key}')","$value": "{description}","$description": "Endpoints describe services locations","$key": "{$uuid}","$properties": {"description": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "endPoint","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/endPoints('{$key}')?representation=endPoint.$details&role={$role}"}}}},"$creUser": {"$title": "Created by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updUser": {"$title": "Updated by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$creDate": {"$title": "Created on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updDate": {"$title": "Updated on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"}},"$links": {},"$actions": {},"$shortUrl": "{$shortUrl}/endpoints('{$uuid}')"}},"locales": {"$title": "Locales","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/json","$prototype": "{$baseUrl}/$prototypes('{$representation}.$details')","$key": "{$uuid}","$description": "Regional preferences","$pluralType": "localePreferences","$representation": "localePreference","$properties": {"code": {"$title": "Locale code","$isUnique": true,"$isMandatory": true,"$capabilities": "sort,alphaTab","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}"},"$lookup": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/lookupLocales?representation=lookupLocale.$lookup&role={$role}&trackingId={$trackingId}&binding=code","$result": "name"}},"$type": "application/x-string"},"description": {"$title": "Description","$isMandatory": true,"$capabilities": "sort,localize,alphaTab","$links": {"$localize": {"$title": "Translations","$url": "{$shortUrl}/description/$localize","$method": "GET"}},"$type": "application/x-string"},"enabled": {"$title": "Enabled","$capabilities": "sort","$type": "application/x-boolean"},"shortDate": {"$title": "Date format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"longDate": {"$title": "Long date format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"shortTime": {"$title": "Time format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"longTime": {"$title": "Long time format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"shortDatetime": {"$title": "Date/time format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"longDatetime": {"$title": "Long date/time format","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-string"},"firstDayOfWeek": {"$title": "First day of week","$isMandatory": true,"$capabilities": "sort","$type": "application/x-choice","$value": {"$type": "application/x-integer","$enum": [{"$value": 0,"$title": "Sunday"},{"$value": 1,"$title": "Monday"},{"$value": 2,"$title": "Tuesday"},{"$value": 3,"$title": "Wednesday"},{"$value": 4,"$title": "Thursday"},{"$value": 5,"$title": "Friday"},{"$value": 6,"$title": "Saturday"}]}},"twoDigitYearMax": {"$title": "Two-digit max year","$isMandatory": true,"$capabilities": "","$type": "application/x-integer","$isDisabled": true},"numberDecimalSeparator": {"$title": "Number decimal separator","$isMandatory": true,"$capabilities": "sort,alphaTab","$type": "application/x-choice","$value": {"$type": "application/x-string","$enum": [{"$value": ".","$title": ". (dot)"},{"$value": ",","$title": ", (comma)"}]},"$format": "$combo"},"numberGroupSeparator": {"$title": "Number group separator","$capabilities": "sort,alphaTab","$type": "application/x-choice","$value": {"$type": "application/x-string","$enum": [{"$value": " ","$title": "Space"},{"$value": ".","$title": ". (dot)"},{"$value": ",","$title": ", (comma)"},{"$value": "","$title": "None"},{"$value": "'","$title": "' (hyphen)"}]},"$format": "$combo"},"numberGroupSize": {"$title": "Number group size","$capabilities": "sort","$type": "application/x-integer"},"$creUser": {"$title": "Created by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updUser": {"$title": "Updated by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$creDate": {"$title": "Created on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updDate": {"$title": "Updated on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"}},"$links": {},"$actions": {},"$shortUrl": "{$shortUrl}/locales('{$uuid}')"}},"preferences": {"$title": "User preferences","$isExcluded": true,"$capabilities": "sort,filter","$type": "application/x-reference","$item": {"$url": "{$baseUrl}/userPreferences('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/userPreferences('{$key}')","$value": "{$key}","$key": "{$uuid}","$properties": {},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "userPreference","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/userPreferences('{$key}')?representation=userPreference.$details&role={$role}"}}}},"bookmarks": {"$title": "Bookmarks","$isExcluded": true,"$capabilities": "sort,filter","$type": "application/x-reference","$item": {"$url": "{$baseUrl}/userBookmarks('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/userBookmarks('{$key}')","$value": "{$key}","$key": "{$uuid}","$properties": {},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "userBookmark","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/userBookmarks('{$key}')?representation=userBookmark.$details&role={$role}"}}}},"ldap": {"$title": "LDAP instance","$capabilities": "sort,filter","$type": "application/x-reference","$item": {"$url": "{$baseUrl}/ldaps('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/ldaps('{$key}')","$value": "{name} {url}","$description": "LDAP","$key": "{$uuid}","$properties": {"name": {"$type": "application/x-string"},"url": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "ldap","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/ldaps('{$key}')?representation=ldap.$details&role={$role}"}}}},"oauth2": {"$title": "OAuth2 instance","$capabilities": "sort,filter","$type": "application/x-reference","$item": {"$url": "{$baseUrl}/oauth2s('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/oauth2s('{$key}')","$value": "{name} {baseSite}","$description": "OAuth2 server {name}","$key": "{$uuid}","$properties": {"name": {"$type": "application/x-string"},"baseSite": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "oauth2","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/oauth2s('{$key}')?representation=oauth2.$details&role={$role}"}}}},"adminTeams": {"$title": "Teams administrator","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/x-reference","$item": {"$url": "{$baseUrl}/teams('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/teams('{$key}')","$value": "{description}","$description": "Teams management","$key": "{$uuid}","$properties": {"description": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "team","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/teams('{$key}')?representation=team.$details&role={$role}"}}}}},"authorTeams": {"$title": "Teams author","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/x-reference","$item": {"$url": "{$baseUrl}/teams('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/teams('{$key}')","$value": "{description}","$description": "Teams management","$key": "{$uuid}","$properties": {"description": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "team","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/teams('{$key}')?representation=team.$details&role={$role}"}}}}},"memberTeams": {"$title": "Teams member","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/x-reference","$item": {"$url": "{$baseUrl}/teams('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/teams('{$key}')","$value": "{description}","$description": "Teams management","$key": "{$uuid}","$properties": {"description": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "team","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/teams('{$key}')?representation=team.$details&role={$role}"}}}}},"landingPages": {"$title": "Landing pages","$capabilities": "sort,filter","$type": "application/x-array","$item": {"$type": "application/x-reference","$item": {"$url": "{$baseUrl}/landingPages('{$key}')?representation={$representation}.$thumb","$shortUrl": "{$baseUrl}/landingPages('{$key}')","$value": "{title}","$key": "{$uuid}","$properties": {"title": {"$type": "application/x-string"}},"$prototype": "{$baseUrl}/$prototypes('{$representation}.$thumb')","$representation": "landingPage","$links": {"$details": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/landingPages('{$key}')?representation=landingPage.$details&role={$role}"}}}}},"$creUser": {"$title": "Created by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updUser": {"$title": "Updated by","$type": "application/x-string","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$creDate": {"$title": "Created on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"},"$updDate": {"$title": "Updated on","$type": "application/x-datetime","$isDisabled": true,"$isHidden": true,"$capabilities": "sort,filter"}},"$links": {"testlogin": {"$type": "application/json;vnd.sage=syracuse","$url": "{$baseUrl}/{$pluralType}('{$uuid}')/$service/testlogin?representation={$representation}.$details&pwd={pwd}","$title": "LDAP Test login","$method": "post","$parameters": {"$properties": {"pwd": {"$title": "Password","$type": "application/x-password","$value": ""}}}},"$edit": {"$type": "application/json;vnd.sage=syracuse","$title": "Edit","$url": "{$baseUrl}/{$pluralType}('{$key}')/$workingCopies?representation={$representation}.$edit&role={$role}","$method": "POST"},"$delete": {"$title": "Delete","$confirm": "The record {login} will be deleted. Confirm ?","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}","$type": "application/json;vnd.sage=syracuse","$method": "DELETE"},"$query": {"$type": "application/json;vnd.sage=syracuse","$title": "List of users","$url": "{$baseUrl}/{$pluralType}?representation={$representation}.$query&role={$role}"},"$help": {"$url": "{$baseHelpUrl}/../Administration-reference/Users.html","$title": "Help","$type": "text/html","$target": "help"},"$wordreport": {"$title": "Word report","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}&reportMode={reportMode}&doc_uuid={document}","$type": "application/syracuse-word-report","$confirm": "Have you installed the SyracuseAddins for Office?","$officeAddinSetup": "/msoffice/lib/general/addIn/SyracuseOfficeAddinsSetup.EXE","$parameters": {"$url": "/sdata/syracuse/collaboration/syracuse/msoReportModes/$template/$workingCopies?representation=msoReportMode.$edit&role={$role}&$msoRepr={$representation}.$details&$msoLocale=&$msoCpy=&$msoLeg=&$msoActiv=&$msoEndpoint=","$method": "POST","$properties": {"dummy": {"$title": "dummy","$type": "application/x-string"}}}},"$excelreport": {"$title": "Excel report","$url": "{$baseUrl}/{$pluralType}('{$key}')?representation={$representation}.$details&role={$role}&excelReportMode={excelReportMode}&doc_uuid={document}","$type": "application/syracuse-excel-worksheet","$confirm": "Have you installed the SyracuseAddins for Office?","$officeAddinSetup": "/msoffice/lib/general/addIn/SyracuseOfficeAddinsSetup.EXE","$parameters": {"$url": "/sdata/syracuse/collaboration/syracuse/msoExcelReportModes/$template/$workingCopies?representation=msoExcelReportMode.$edit&role={$role}&$msoExcelRepr={$representation}.$details&$msoLocale=&$msoCpy=&$msoLeg=&$msoActiv=&$msoEndpoint=","$method": "POST","$properties": {"dummy": {"$title": "dummy","$type": "application/x-string"}}}}},"$actions": {},"$descriptor": "prototype user.$details","$baseType": "application/json;vnd.sage=syracuse","$baseUrl": "http://ayvdemosyracuse:8124/sdata/syracuse/collaboration/syracuse","$baseHelpUrl": "http://ayvdemosyracuse:8124/help/en-US/syracuse/collaboration/syracuse","$localization": {"@AdministrationSectionTitle": "Administration","@ExplorerSectionTitle": "Explorer","@InformationsSectionTitle": "Information","@LocalesSectionTitle": "Custom locales","@LoginSectionTitle": "Login"},"$article": {"$layout": {"$items": [{"$layoutType": "row","$items": [{"$items": [{"$title": "{@LoginSectionTitle}","$category": "section","$layout": {"$items": [{"$category": "section","$layout": {"$items": [{"$bind": "login"},{"$bind": "active"},{"$bind": "authentication"},{"$bind": "oldPassword"},{"$bind": "password"},{"$bind": "changePassword"},{"$bind": "authenticationName"},{"$bind": "ldap"},{"$bind": "oauth2"}]}}]}},{"$title": "{@InformationsSectionTitle}","$category": "section","$layout": {"$items": [{"$category": "section","$layout": {"$items": [{"$bind": "title"},{"$bind": "firstName"},{"$bind": "lastName"},{"$bind": "email"},{"$bind": "photo"}]}}]}}]},{"$items": [{"$title": "{@ExplorerSectionTitle}","$category": "section","$layout": {"$items": [{"$category": "section","$layout": {"$items": [{"$bind": "explorer","$isTitleHidden": true}]}}]}}]}]},{"$layoutType": "stack","$items": [{"$title": "{@AdministrationSectionTitle}","$category": "section","$layout": {"$items": [{"$category": "section","$layout": {"$layoutType": "row","$items": [{"$items": [{"$bind": "groups"},{"$bind": "infov6"},{"$bind": "userv6"},{"$bind": "passwordv6"},{"$bind": "endpoints"}]},{"$items": [{"$bind": "adminTeams"},{"$bind": "authorTeams"},{"$bind": "memberTeams"}]}]}}]}},{"$title": "{@LocalesSectionTitle}","$category": "section","$layout": {"$items": [{"$category": "section","$layout": {"$items": [{"$bind": "locales","$isTitleHidden": true,"$format": "cards","$layout": {"$items": [{"$category": "section","$layout": {"$layoutType": "row","$items": [{"$layoutType": "stack","$items": [{"$bind": "code"},{"$bind": "description"},{"$bind": "enabled"},{"$bind": "shortDate"},{"$bind": "shortTime"},{"$bind": "shortDatetime"}]},{"$layoutType": "stack","$items": [{"$bind": "longDate"},{"$bind": "longTime"},{"$bind": "longDatetime"},{"$bind": "firstDayOfWeek"}]},{"$layoutType": "stack","$items": [{"$bind": "numberDecimalSeparator"},{"$bind": "numberGroupSeparator"},{"$bind": "numberGroupSize"}]}]}}]}}]}}]}}]}]}}}