Error Message
If you find an error message within your DPE logs, which contains
FunctionName( Arguments)
failed: System.Data.SqlClient.SqlException (0x80131904): Cannot open database "DigasDBTestMT" requested by the login. The login failed.
Login failed for user 'Domain\Username'.
and looks complete like
EasySearchEntryIdsByFilterWithModeAndSkipOptions(Database\Table, 0, 10000, '<XmlFilter>
<And>
<Field Name="SoftDeleted">1</Field>
<Not>
<Field Name="NoDelete">1</Field>
</Not> <Field Name="ChangeDate">
<LessOrEqual Parse="1">@now()@addtime("-10:00:00:00")</LessOrEqual>
</Field>
</And>
</XmlFilter>', 'CreateDate Desc', False) failed: System.Data.SqlClient.SqlException (0x80131904): Cannot open database "Databasename" requested by the login. The login failed.
Login failed for user 'Domain\Username'.
at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling, SqlAuthenticationProviderManager sqlAuthProviderManager)
at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at David.Dpe.ContentService.ContentServiceImpl.ValidateDb(DbLogonInfo logonInfo, IsolationLevel isolationLevel) in D:\ccnet\Release\DPE_Services\source\Services\ContentService\ContentService\ContentServiceImpl.cs:line 367
at David.Dpe.ContentService.ContentServiceImpl.EasySearchEntryIdsByFilterWithMode(String tableId, Int32 offset, Int32 maxResults, ContentFilter filter, QuerySortOrders orders, SearchMode mode, Boolean skipTotalCount, Boolean skipChangeNumber) in D:\ccnet\Release\DPE_Services\source\Services\ContentService\ContentService\ContentServiceImpl.cs:line 1139
at David.Dpe.ContentService.ContentService.EasySearchEntryIdsByFilterWithModeAndSkipOptions(String tableId, Int32 offset, Int32 maxResults, ContentFilter filter, QuerySortOrders orders, SearchMode mode, Boolean skipTotalCount, Boolean skipChangeNumber) in D:\ccnet\Release\DPE_Services\source\Services\ContentService\ContentService\ContentService.cs:line 2650
ClientConnectionId:f36d87d2-de46-448f-aa0e-8f235717f541
Error Number:4060,State:1,Class:11
Issue Description
Users may encounter a database access error when a DPE Workflow attempts to interact with a database for which the used user lacks proper access permissions.
This error typically arises due to misconfiguration.
Possible Solution
To try to resolve the database access error, follow these steps:
-
Ensure that the workflow configurations are accurate. Check that the workflows are correctly mapped to their respective databases.
-
Confirm that the service accounts executing the workflows have the required permissions for the databases they need to access.
-
Perform a test connection to the database using the service account credentials to verify access rights.
-
Refer to the DPE system documentation for detailed instructions on configuring workflows and setting up service accounts.
-
If the issue persists after taking the above steps, reach out to the support team for further assistance.