User resource data model
/User
Dictionary table
Attribute | Type | Required | Updatable | Description | Additional comment |
id |
Long |
Yes |
- |
Primary key of the user |
|
userName |
String |
Yes |
Yes |
User name used to identify a user, internal management and access to applications |
User name must be unique |
firstName |
String |
Yes |
Yes |
First name of the user |
|
lastName |
String |
Yes |
Yes |
First surname |
|
middleName |
String |
- |
Yes |
Used like second surname |
|
fullName |
String |
- |
- |
firstName + lastName + middleName |
|
shortName |
String |
- |
Yes |
Mail of the user but without the domain |
The mail is created with the next pattern: shortName + '@' + mailDomain |
createdDate |
Calendar |
- |
- |
User creation date |
|
modifiedDate |
Calendar |
- |
- |
Last modification date of any user attributes |
|
createdByUser |
String |
- |
- |
User that has created the user |
|
modifiedByUser |
String |
- |
- |
User that has modified the last time attributes of this user |
|
active |
Boolean |
- |
Yes |
User active or disable |
If you avoid this attribute in the create operation by default the value is false |
multiSession |
Boolean |
- |
Yes |
Allows some sessions with Soffid ESSO |
When the value is false if the user logs with another session active, the SSO close the previous one |
comments |
String |
- |
Yes |
Comments about the user |
|
userType |
String |
Yes |
Yes |
User type assigned to the user. by default "I" |
New use types could be created in the IAM Console (Administration > Configure Soffid > Global settings > User type) |
profileServer |
String |
Yes |
Yes |
Server which hosts the user profile |
It is linked to Roaming UserProfile on Active Directory Servers are managed in the IAM Console (Administration > Resources > Hosts) In the installation of Soffid a "null" server is created to be used by default |
homeServer |
String |
Yes |
Yes |
Server which hosts the user folder |
It is linked to Home Drive attribute on active directory Servers are managed in the IAM Console (Administration > Resources > Hosts) In the installation of Soffid a "null" server is created to be used by default |
mailServer |
String |
Yes |
Yes |
Server which hosts the user mail |
Servers are managed in the IAM Console (Administration > Resources > Hosts) In the installation of Soffid a "null" server is created to be used by default |
nationalID |
String |
- |
Yes |
ID card of the user |
For example the NIF or NIE |
phoneNumber |
String |
- |
Yes |
Phone number of the user (company or personal) |
|
mailAlias |
String |
- |
Yes |
Lisf of mails separated by comma |
|
mailDomain |
String |
- |
Yes |
|
The domain of the mails must be valid Mail domains are managed in the IAM Console (Administration > Resources > Mail Domains) |
primaryGroup |
String |
Yes |
Yes |
ID of the primary group where the user is assigned |
Groups are managed in the IAM Console (Administration > Resources > Groups) |
primaryGroupDescription |
String |
- |
Yes |
Description of the primary group where the user is assigned |
Groups are managed in the IAM Console (Administration > Resources > Groups) |
consoleProperties |
ConsoleProperties
|
- |
- |
Internal properties for the IAM Console |
These properties are created the first time the user access to IAM console |
password |
String |
- |
Yes |
Password used with the userName to access applications |
Password is not returned in the searches, is only used in PATCH and PUT methods |
attributes |
Map<String, Object>
|
- |
Yes |
Additional data assigned to the user |
Attributes are managed in the IAM Console (Administration > Configure Soffid > Global Settings > Metadata) Values are managed in the IAM Console (Administration > Resources > Users) |
meta |
ScimMeta
|
- |
- |
Additional information recommended in SCIM definition:
|
These attributes are returned in the response These attributes are not updatable |
secondaryGroups |
List<JsonSecondaryGroup>
|
- |
Yes |
Secondary groups assigned to the user:
|
Groups are managed in the IAM Console (Administration > Resources > Groups) Secundary groups are managed in the IAM Console (Administration > Resources > Users) |
accounts |
List<JsonAccount> id (Long) name (String) system (String) |
- |
Yes |
Accounts created to the user to access to applications:
|
Accounts are managed in the IAM Console Administration > Resources > Users, Account tab) Systems are managed in the IAM Console (Administration > Resources > Information Systems) |
Full JSON example
{
"lastName": "Smith",
"createdByUser": "admin",
"mailServer": "null",
"mailDomain": "soffid.com",
"nationalID": "",
"multiSession": false,
"modifiedByUser": "admin",
"id": 1188,
"homeServer": "null",
"primaryGroupDescription": "World",
"primaryGroup": "world",
"comments": "Sample user",
"profileServer": "null",
"secondaryGroups": [
{
"groupDescription": "Enterprise",
"id": 12353,
"group": "enterprise"
},
{
"groupDescription": "Engineering team",
"id": 12347,
"group": "engineering"
}
],
"active": true,
"fullName": "John Smith",
"userName": "jsmith",
"mailAlias": "jsmith@soffid.com, jsmith.dev@soffid.com",
"firstName": "John",
"createdDate": "2017-08-04T15:04:37+02:00",
"phoneNumber": "666777888",
"meta": {
"created": "2017-08-04T15:04:37+02:00",
"location": "http://<domain>/webservice/scim2/v1//User/1188",
"lastModified": "2017-08-18T16:52:38+02:00",
"resourceType": "User"
},
"modifiedDate": "2017-08-18T16:52:38+02:00",
"attributes": {
"employeeId": "1234",
"position": "Developer"
},
"middleName": "",
"accounts": [
{
"system": "soffid",
"name": "jsmith",
"id": 12453
}
],
"userType": "I",
"shortName": "jsmith"
}