Skip to content

Security and Login ​

Everything about getting into the system and what you can see once you are in: login attempts and sessions, password rules, two-factor authentication, LDAP, record-level visibility, and the public user-registration page.

For the wider picture of profiles and capabilities, see the Security overview.

Security and Login tab

Login and sessions ​

Max Failed Login Attempts value.info.maxFailedLoginAttempts (default 5) — Consecutive failures before the account is blocked.

Minutes To Remember Failed Logins value.info.minutesToRememberFailedLogins (default 30) — The window those failures are counted over. Five attempts in thirty minutes locks the account; the same five spread across a day do not. Together the two numbers separate a forgetful user from someone guessing passwords.

Maximum Concurrent Sessions Per User value.info.maxLoginSessions — How many sessions one user may hold at once. Leave it empty for no limit.

Auto Logout From Older Sessions When The User Reaches Maximum Concurrent Sessions value.info.autoLogoutWithMaxSessions — What happens at that limit: with this on, the oldest session is logged out to make room; with it off, the new login is refused. The first is kinder to users who left a session open on another machine.

Automatically Logout If No Activity for (Minutes) value.info.autoLogoutTime (default 15) — Idle minutes before a session is closed automatically.

Automatically Logout even with (Stay signed in) value.info.autoLogoutRememberMe (default on) — Whether "remember me" sessions are also subject to that idle timeout.

Password policy ​

These are checked whenever a password is set or changed.

Minimum Password Length value.info.minPasswordLength (default 6), Minimum Alphabetic characters value.info.minAlphaChars, Minimum Special characters value.info.minSpecialChars, Minimum Numeric characters value.info.minNumbersChars, Contains Upper and Lower Case value.info.upperAndLowerCase — The usual complexity requirements.

Prevent Using The Same Old Password When Changing It value.info.preventSamePasswordWhenChanging (default on) — Refuses a "change" that sets the password back to what it already was.

Send Password By Mail Template / Send Password By SMS Template value.info.sendPasswordByMailTemplate, value.info.sendPasswordBySMSTemplate — The messages sent when a new password is delivered. Both accept placeholders — {name1} for the user's name, {loginId} for the login, and {changePasswordRequest.newPassword} for the new password itself.

Two-factor authentication ​

Login Two-Factor Authentication Method value.info.login2FAMethod — The second factor required at login: None, Message OTP (a one-time code sent to the user), or Estidamah API.

Notification For Two-Factor Authentication OTP value.info.notificationFor2FAOtp — The notification that carries the code. Required when the method is Message OTP — the system refuses to save otherwise, since a code nobody receives locks everyone out.

OTP Format value.info.otpFormat — Numeric, Alphanumeric or Alphabetic. Numeric is easiest to read off a phone and type; alphanumeric is stronger for the same length.

OTP Length / OTP Expiry Time / OTP Resend Delay value.info.otpLength, value.info.otpExpiryTime, value.info.otpResendDelay — How long the code is, how long it stays valid, and how long a user must wait before asking for another. The resend delay is what stops a stuck user from triggering a flood of messages.

Estidamah Environment Url, Estidamah Api Key, Estidamah Encryption Key, Estidamah Encryption IV value.info.estidamahEnvironmentUrl, value.info.estidamahApiKey, value.info.estidamahEncryptionKey, value.info.estidamahEncryptionIV — Endpoint and cryptographic material for the Estidamah service. All four are required when that method is selected.

Estidamah needs a server setting too

Selecting the Estidamah method also requires the custom password validator to be enabled in the server's nama.properties file (use-custom-password-validator=true). The configuration refuses to save until that is in place, and tells you exactly which setting is missing.

LDAP ​

Use LDAP For Users Login value.info.useLDAPForUsersLogin — Authenticates users against your directory server instead of against passwords held in Nama.

LDAP Server URL (eg. ldap://192.168.1.10:3268 ) / Default LDAP Domain value.info.ldapServerURL, value.info.defaultLDAPDomain — The directory server address and the domain assumed when a user types a bare user name.

LDAP also needs a server setting

Like Estidamah, this requires use-ldap-for-authentication=true in nama.properties before the configuration will save.

Record security ​

Allow Disabling Code Field With Security value.info.allowDisablingCodeFieldWithSecurity (default on) — Permits a security profile to disable the Code field.

Allow Filling Disabled Fields With Creators value.info.allowFillingDisabledFieldsWithCreators (default on) — Lets the system's own field creators write into fields the user is not allowed to edit. Usually what you want: a user who may not type the branch by hand should still get it filled in automatically.

Merge Alternate Security Profiles Into Main User value.info.mergeAlternateSecurityProfilesIntoMainUser — A user who has been given another user's permissions with a Security Profile Transfer always holds the union of their own permissions and those transferred to them; this option does not change that. It only changes how the union is worked out: normally each check asks the user first and then each transferring user in turn, while with this on their rows are merged once into a single copy of the user and every check reads that copy. The result is the same, worked out faster where many transfers are active.

Display Prevented Records In Search value.info.displayPreventedRecords — Records the user has no view capability for are still listed (blocked, not opened) instead of vanishing. Some organisations prefer the visible "you may not see this" to a silently shorter list.

Do Not Display Prevented Records In List View value.info.doNotdispPrevRecInListView — The same decision taken separately for list views. Both can also be set per security profile, which overrides what is set here.

Display Records With Update Capability To Users In Addition To Records With View Capability value.info.displayRecordsWithUpdateCapabilityToUsers — A record becomes visible if the user has either the view or the update capability, rather than requiring view specifically. Fixes the surprising case of a user who may edit a record but not see it.

Ignore Record Capabilities In All List Views value.info.ignoreRecordCapabilitiesInAllListViews — Switches record-capability filtering off across every list view.

Ignore Record Capabilities In Certain Entities value.info.ignoreRecordCapabilitiesIn (table) — The same, restricted to the entity types you list. Prefer this over the blanket option above.

Prevent Delete User Related To Entity System Entries value.info.preventDeleteUserRelatedToEntitySystemEntries (default on) — Refuses to delete a user that system entries still reference. Leave it on — deleting such a user breaks the audit trail those entries represent.

User add requests ​

Nama can expose a public page where new users request an account. These settings control it.

User Add Request Term / User Add Request Book value.info.userAddRequestTerm, value.info.userAddRequestBook — The document term and book used for the requests that page creates.

Don't Display Employee Type / Don't Display Contractor Type / Don't Display Customer Type / Don't Display Supplier Type value.info.dontDisplayEmployeeType, ...dontDisplayContractorType, ...dontDisplayCustomerType, ...dontDisplaySupplierType — Removes each account type from the choices the public page offers. A business that only registers customers should switch off the other three.

User Add Request Welcome Message In Arabic / User Add Request Welcome Message In English value.info.userAddRequestWelcomeMessageAr, value.info.userAddRequestWelcomeMessageEn — The text shown to someone arriving on that page, in each language.

Settings on this tab ​

Every field on this tab with its exact on-screen label in both languages, so you can find a setting by the name you see. The last column points to the section that explains it.

Field idEnglish labelArabic labelMeaning
value.info.maxFailedLoginAttemptsMax Failed Login Attemptsاقصي عدد يتم السماح للمستخدم بادخال كلمة المرور خطأLogin and sessions
value.info.minutesToRememberFailedLoginsMinutes To Remember Failed Loginsتذكر أخر محاولة خاطئةلادخال كلمة المرور بالدقائق قبل السماح بالدخول مرة أخريLogin and sessions
value.info.maxLoginSessionsMaximum Concurrent Sessions Per Userأقصي عدد مرات تسجيل الدخول المتزامن للمستخدم الواحدLogin and sessions
value.info.autoLogoutWithMaxSessionsAuto Logout From Older Sessions When The User Reaches Maximum Concurrent Sessionsتسجيل الخروج اليا عند تعدي أقصي عدد مرات تسجيل دخول (من الجلسات الأقدم)Login and sessions
value.info.autoLogoutTimeAutomatically Logout If No Activity for (Minutes)تسجيل الخروج اليا عند عدم وجود نشاط لمدة (دقيقة)Login and sessions
value.info.autoLogoutRememberMeAutomatically Logout even with (Stay signed in)تسجيل الخروج حتي مع (الاحتفاظ بتسجيل الدخول)Login and sessions
value.info.minPasswordLengthMinimum Password Lengthأقل طول لحقل كلمة مرور المستخدمPassword policy
value.info.minAlphaCharsMinimum Alphabetic charactersأقل عدد من الحروف الواجب توافرهاPassword policy
value.info.minSpecialCharsMinimum Special charactersأقل عدد من الرموز الواجب توافرهاPassword policy
value.info.minNumbersCharsMinimum Numeric charactersأقل عدد من الأرقام الواجب توافرهاPassword policy
value.info.upperAndLowerCaseContains Upper and Lower Caseتحتوي على حروف صغيرة وكبيرةPassword policy
value.info.preventSamePasswordWhenChangingPrevent Using The Same Old Password When Changing Itمنع استعمال نفس كلمة المرور القديمة عند تغييرهاPassword policy
value.info.sendPasswordByMailTemplateSend Password By Mail TemplateSend Password By Mail TemplatePassword policy
value.info.sendPasswordBySMSTemplateSend Password By SMS TemplateSend Password By SMS TemplatePassword policy
value.info.login2FAMethodLogin Two-Factor Authentication Methodنوع المصادقة الثنائية لتسجيل الدخولTwo-factor authentication
value.info.notificationFor2FAOtpNotification For Two-Factor Authentication OTPتنبيه OTP للمصادقة الثنائيةTwo-factor authentication
value.info.otpFormatOTP FormatOTP FormatTwo-factor authentication
value.info.otpLengthOTP Lengthطول OTPTwo-factor authentication
value.info.otpExpiryTimeOTP Expiry Timeوقت انتهاء صلاحية OTPTwo-factor authentication
value.info.otpResendDelayOTP Resend Delayمدة الانتظار قبل إعادة إرسال OTPTwo-factor authentication
value.info.estidamahEnvironmentUrlEstidamah Environment UrlEstidamah Environment UrlTwo-factor authentication
value.info.estidamahApiKeyEstidamah Api KeyEstidamah Api KeyTwo-factor authentication
value.info.estidamahEncryptionKeyEstidamah Encryption KeyEstidamah Encryption KeyTwo-factor authentication
value.info.estidamahEncryptionIVEstidamah Encryption IVEstidamah Encryption IVTwo-factor authentication
value.info.useLDAPForUsersLoginUse LDAP For Users LoginUse LDAP For Users LoginLDAP
value.info.ldapServerURLLDAP Server URL (eg. ldap://192.168.1.10:3268 )LDAP Server URL (eg. ldap://192.168.1.10:3268 )LDAP
value.info.defaultLDAPDomainDefault LDAP DomainDefault LDAP DomainLDAP
value.info.allowDisablingCodeFieldWithSecurityAllow Disabling Code Field With SecurityAllow Disabling Code Field With SecurityRecord security
value.info.allowFillingDisabledFieldsWithCreatorsAllow Filling Disabled Fields With CreatorsAllow Filling Disabled Fields With CreatorsRecord security
value.info.mergeAlternateSecurityProfilesIntoMainUserMerge Alternate Security Profiles Into Main Userدمج ملفات الصلاحية البديلة في المستخدم الرئيسيRecord security
value.info.displayPreventedRecordsDisplay Prevented Records In Searchعرض السجلات الممنوعة من الاستعمال في البحثRecord security
value.info.doNotdispPrevRecInListViewDo Not Display Prevented Records In List Viewعدم عرض السجلات الممنوعة من الاستعمال في القوائمRecord security
value.info.displayRecordsWithUpdateCapabilityToUsersDisplay Records With Update Capability To Users In Addition To Records With View Capabilityعرض السجلات التي لها صلاحية تعديل مع المستخدم الحالي بالإضافة الي السجلات التي لها صلاحية مطالعه معهRecord security
value.info.ignoreRecordCapabilitiesInAllListViewsIgnore Record Capabilities In All List Viewsتجاهل صلاحيات السجل مع القوائم في كل الشاشاتRecord security
value.info.preventDeleteUserRelatedToEntitySystemEntriesPrevent Delete User Related To Entity System Entriesمنع حذف المستخدم المرتبط ب Entity System EntriesRecord security
value.info.ignoreRecordCapabilitiesInIgnore Record Capabilities In Certain Entitiesتجاهل صلاحيات السجل مع شاشات محددةRecord security
value.info.ignoreRecordCapabilitiesIn.entityTypeEntity TypeالنوعRecord security
value.info.ignoreRecordCapabilitiesIn.entityTypeListEntity Type Listقائمة الأنواعRecord security
value.info.userAddRequestTermUser Add Request Termتوجيه إضافة مستخدمUser add requests
value.info.userAddRequestBookUser Add Request Bookدفتر إضافة مستخدمUser add requests
value.info.dontDisplayEmployeeTypeDon't Display Employee Typeعدم عرض نوع المستخدم موظفUser add requests
value.info.dontDisplayContractorTypeDon't Display Contractor Typeعدم عرض نوع المستخدم مقاولUser add requests
value.info.dontDisplayCustomerTypeDon't Display Customer Typeعدم عرض نوع المستخدم عميلUser add requests
value.info.dontDisplaySupplierTypeDon't Display Supplier Typeعدم عرض نوع المستخدم موردUser add requests
value.info.userAddRequestWelcomeMessageArUser Add Request Welcome Message In Arabicرسالة الترحيب العربي في طلب إضافة مستخدمUser add requests
value.info.userAddRequestWelcomeMessageEnUser Add Request Welcome Message In Englishرسالة الترحيب الإنجليزية في طلب إضافة مستخدمUser add requests