XDOC simultaneously allows both internally managed users and externally managed users to access the XDOC software and XDOC projects.
To understand XDOC security, you must understand the difference between internally and externally managed users, the XDOC project model, and XDOC Security Profiles.
1.1. XDOC Projects Overview XDOC is a multi-project system with user security and access control defined on a project by project basis. User access can be limited to only certain projects, with different security profiles and permissions for each project.
A project in XDOC is essentially a Workspace to store certain types of documents. Documents stored in a project can be related to business entities in other 3rd party applications, or just indexed and categorized internally within XDOC.
Each project has its own separate Repository Configuration that defines the types of documents being stored, processing rules, security, electronic delivery to 3rd party systems, and many other configuration settings.
Examples of projects include:
1.2. User Security Profile Overview All access control and permissions in XDOC are defined in XDOC Security Profiles. Administrators can create as many different Security Profiles as needed based on user responsibilities and access. A Security Profile provides for very granular control of permissions and document access based on both static permissions, and dynamic permissions based on document properties and properties of the related business entity (Container).
Users can be assigned a default Security Profiles for each project they have access to, as well as a dynamic Security Profile for each business entity / container that is accessed. The determination of the default Security Profile for a given project is re-evaluated at each user logon and can be determined by a combination of internal user settings, as well as settings passed to XDOC from the External System if the user is managed externally.
1.3. Internally Managed Users Internally managed users are created, stored, and authenticated within the XDOC database user related tables. Username and Password validation is done against the stored user password in the XDOC database.
1.4. Externally Managed Users Overview Externally managed users are managed by an External System. The External system can be any type of system, application, or database including:
Externally managed users do not need to pre-exist in the XDOC database. When an external managed user is authenticated the first time against the External System, XDOC automatically adds the user record to the XDOC database and marks the user as External so that XDOC knows to always validate logon attempts for this user via the External System.
Additionally, each subsequent time the user logs on to XDOC, the user record in the XDOC database is updated with the latest user information passed from the External System including:
1.5. Logon Processing Overview An attempt to logon to XDOC can occur in any of the following methods. Note: XDOC supports all of these methods, which can be enabled or disabled as required by the XDOC Administrator.
User Entered Credentials:
Auto-Logon Credentials:
Secure User Token Passed Credentials:
1.5.1. User Entered and Auto-Logon Credential Processing XDOC performs the following steps when validating User entered credentials, or Auto-logon supplied credentials:
1.5.2. Secure User Token Passed Credential Processing Secure User Token passed credentials are used by 3rd party application wishing to open XDOC User Interfaces for users already logged on to their application, without requiring the user to re-logon to XDOC.
If XDOC is configured to allow User Token passing from this application, when XDOC receives the User Token, XDOC will assume that the user is Trusted and XDOC will not re-validate the credentials with the External System. The User Token must therefore contain the same information normally returned from the External System during a User Entered logon scenario.
For details on the structure and encryption of the User Token, see the XDOC User Interface Service document (XDOC-Service-UserInterface.pdf).
Assuming that User Token is valid and allowed, XDOC performs the following steps: