Tenants

Database Information


Database NameDatabase TypeCollection Name
%tenant_code%_multitenantMongoDBtenants


Record Explanation



Field NameTypeMandatoryUniqueIndexedDescription

_idMongo IDYESYESYESMongo Record ID

codeStringYESYESYESTenant Code

nameStringYESNONOTenant Name

descriptionStringNONONOTenant Description

typeStringNONONOTenant Type

consoleBooleanNONONOTenant is Console  or not

tagStringNONONOTenant Tag

profileObjectNONONOTenant Profile

tenantObjectNONONOMain Tenant - If a tenant was client → It needs to have main tenant



Field NameTypeMandatoryUniqueIndexedDescription
idStringYESNONOMain Tenant ID
codeStringYESNONOMain Tenant Code

oauthObjectYESNONOOpen Authentication


Field NameTypeMandatoryUniqueIndexedDescription
secretStringYESNONOString for secret of oauth
redirectURIStringYESNONOURI for redirection
grantsArrayYESNONO
disabledIntegerYESNONO
typeIntegerYESNONO
loginModeIntegerYESNONOLogin Technology & Method
pinObjectNOYESNOPin Code Object

applicationArrayNONONOTenant Application


Field NameTypeMandatoryUniqueIndexedDescription
descriptionStringNONONOApplication Description
productStringYESNONOProduct Code
packageStringYESNONOPackage Code
aclObjectNONONOExactly like product scope ACL to overwrite the product ACL for this tenant this product
_TTLStringYESNONOTime to Live - ['6', '12', '24', '48', '72', '96', '120', '144', '168']
keysArrayYESNONOApplication Keys

Field NameTypeMandatoryUniqueIndexedDescription
keyStringNONONO
extKeysArrayNONONOExternal Keys

Field NameTypeMandatoryUniqueIndexedDescription
labelStringNONONOKey label
extKeyStringYESYESNOExternal Key
deviceObjectNONONODevice Information
geoObjectNONONOGeo Location
envStringNONONOEnvironment Name
dashboardAccessBooleanNONONOHave Access to dashboard or not
expDateStringNONONOExpiry Date
configObjectNONONOConfiguration Object


Field NameTypeMandatoryUniqueIndexedDescription
%environment_name%ObjectNONONOEnvironment Name


Field NameTypeMandatoryUniqueIndexedDescription
%service_name%ObjectNONONO
commonFieldsObjectNONONO

 Sample


Record Sample
{
	_id: '5c0e74ba9acc3c5a84a51259',
	type: "product",
	code: "DBTN",
	name: "Console Tenant",
	description: "This is the tenant that holds the access rights and configuration for the console users with DSBRD_GUEST as Guest default package",
	oauth: {
		secret: %SECRET%,
		redirectURI: "http://domain.com",
		grants: [
			"password",
			"refresh_token"
		],
		pin: {
			DSBRD: {
				enabled: false
			}
		},
		disabled: 0,
		type: 2,
		loginMode: "urac"
	},
	applications: [
		{
			product: "DSBRD",
			package: "DSBRD_GUEST",
			description: "Dashboard application for DSBRD_GUEST package",
			appId: "5c0e74ba9acc3c5a84a5125a",
			_TTL: 604800000,
			keys: [
				{
					key: %KEY%,
					extKeys: [
						{
							label: %label%,
							extKey: %EXTERNAL_KEY%,
							device: null,
							geo: null,
							env: "DASHBOARD",
							dashboardAccess: true,
							expDate: null
						}
					],
					config: {
						dashboard: {
							oauth: {
								loginMode: "urac"
							},
							commonFields: {
								mail: {
									from: "me@localhost.com",
									transport: {
										type: "sendmail",
										options: {

										}
									}
								}
							},
							urac: {
								hashIterations: 1024,
								seedLength: 32,
								link: {
									addUser: "http://dashboard.soajs.org:80/#/setNewPassword",
									changeEmail: "http://dashboard.soajs.org:80/#/changeEmail/validate",
									forgotPassword: "http://dashboard.soajs.org:80/#/resetPassword",
									join: "http://dashboard.soajs.org:80/#/join/validate"
								},
								tokenExpiryTTL: 172800000,
								validateJoin: true,
								mail: {
									join: {
										subject: "Welcome to SOAJS",
										path: "undefined/soajs/node_modules/soajs.urac/mail/urac/join.tmpl"
									},
									forgotPassword: {
										subject: "Reset Your Password at SOAJS",
										path: "undefined/soajs/node_modules/soajs.urac/mail/urac/forgotPassword.tmpl"
									},
									addUser: {
										subject: "Account Created at SOAJS",
										path: "undefined/soajs/node_modules/soajs.urac/mail/urac/addUser.tmpl"
									},
									changeUserStatus: {
										subject: "Account Status changed at SOAJS",
										path: "undefined/soajs/node_modules/soajs.urac/mail/urac/changeUserStatus.tmpl"
									},
									changeEmail: {
										subject: "Change Account Email at SOAJS",
										path: "undefined/soajs/node_modules/soajs.urac/mail/urac/changeEmail.tmpl"
									}
								}
							}
						}
					}
				}
			]
		}
	],
	tag: "Console",
	console: true
}