Вопрос

Ошибка авторизации

Разворачиваю Creatio на новой машине. Версия 7.16.4
 

Пытаюсь войти в систему пользователем Supervisor, выдается ошибка авторизации.
 

Redis запущен и работает. Если его отключить, сообщение меняется.

Доступ к SQLserver есть. В SqlServer Profiler вижу входящие запросы, все выполняются без ошибок. Если у пользователя Supervisor в БД поменять язык, то и в интерфейсе язык поменялся (Authorization failed). 
 

Если указываю несуществующего в БД пользователя, сообщение также меняется (Invalid username or password specified. Verify that you have entered correct data or contact your system administrator. A system administrator can change the password on the user page)
 

Все компоненты Windows по списку проверила, все установлено.
 

В файле ProcessMaintenanceLog ошибка (см ниже). Куда дальше смотреть? Что проверять? 

2020-10-29 09:41:51,005 [208] WARN IIS APPPOOL\Creatio_7164 ProcessMaintenanceLog RunStep - Operation ProcessLogArchivingOperation failed
System.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired.  The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): Время ожидания операции истекло
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
   at System.Data.SqlClient.SqlDataReader.get_MetaData()
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
   at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
   at Polly.Policy.<>c__DisplayClass119_0`1.<Execute>b__0(Context ctx, CancellationToken ct)
   at Polly.Policy.<>c__DisplayClass129_0`1.<ExecuteInternal>b__0(Context ctx, CancellationToken ct)
   at Polly.Policy.<>c__DisplayClass103_0.<NoOp>b__1(Context ctx, CancellationToken ct)
   at Polly.NoOp.NoOpEngine.Implementation[TResult](Func`3 action, Context context, CancellationToken cancellationToken)
   at Polly.Policy.<>c.<NoOp>b__103_0(Action`2 action, Context context, CancellationToken cancellationToken)
   at Polly.Policy.ExecuteInternal[TResult](Func`3 action, Context context, CancellationToken cancellationToken)
   at Polly.Policy.Execute[TResult](Func`3 action, Context context, CancellationToken cancellationToken)
   at Polly.Policy.Execute[TResult](Func`1 action)
   at Terrasoft.DB.MSSql.MSSqlExecutor.FailoverExecute[TResult](DbCommand command, Func`1 func)
   at Terrasoft.Core.DB.DBExecutor.FailoverExecuteReader(DbCommand command, Func`1 func)
   at Terrasoft.Core.DB.DBExecutor.ExecuteCommand[TResult](Func`2 commandExecutionCallback, String sqlText, QueryParameterCollection queryParameters, CancellationToken cancellationToken)
   at Terrasoft.Core.DB.DBExecutor.InternalExecuteReader(String sqlText, QueryParameterCollection queryParameters, CommandBehavior behavior, CancellationToken cancellationToken)
   at Terrasoft.Core.DB.DBExecutor.InternalExecuteReader(String sqlText, QueryParameterCollection queryParameters)
   at Terrasoft.Core.DB.Select.ExecuteReader(ExecuteReaderReadMethod readMethod)
   at Terrasoft.Core.SchemaManager`1.GetLastSchemaResourceModification(UserConnection userConnection, Guid workspaceId)
   at Terrasoft.Core.SchemaManager`1.<CreateItems>d__245.MoveNext()
   at Terrasoft.Core.SchemaManager`1.InitializeItems(Guid itemUId)
   at Terrasoft.Core.Entities.EntitySchemaManager.InitializeItems(Guid itemUId)
   at Terrasoft.Core.SchemaManager`1.InitializeItems()
   at Terrasoft.Core.Entities.EntitySchemaManager.InitializeItems()
   at Terrasoft.Core.SchemaManager`1.Initialize(SchemaManagerProvider provider, SchemaManagerProviderConfigurationElement configuration)
   at Terrasoft.Core.FileSystemEnabledSchemaManager`1.Initialize(SchemaManagerProvider provider, SchemaManagerProviderConfigurationElement configuration)
   at Terrasoft.Core.Entities.EntitySchemaManager.Initialize(SchemaManagerProvider provider, SchemaManagerProviderConfigurationElement configuration)
   at Terrasoft.Core.SchemaManagerProvider.InitializeSchemaManager(String managerName)
   at Terrasoft.Core.SchemaManagerProvider.<>c__DisplayClass53_0.<GetSchemaManager>b__1()
   at System.Lazy`1.CreateValue()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Lazy`1.get_Value()
   at Terrasoft.Core.SchemaManagerProvider.GetSchemaManager(String managerName)
   at Terrasoft.Core.SchemaManagerProvider.GetManager(String managerName)
   at Terrasoft.Core.UserConnection.get_EntitySchemaManager()
   at Terrasoft.Core.Process.ProcessLogArchiverStorage.GetSchemaColumnsNames(String schemaFrom)
   at Terrasoft.Core.Process.ProcessLogArchiverStorage.MoveToHistoryLog(DBExecutor dbExecutor, String schemaName)
   at Terrasoft.Core.Process.ProcessLogArchiverStorage.Archive()
   at Terrasoft.Core.Process.LoopOperationUtils.DelegateLoopOperation.RunStep(ILoopContext context)
   at Terrasoft.Core.Process.LoopOperationUtils.MetricLoopContext.Operation.RunStep(ILoopContext context)
   at Terrasoft.Core.Process.LoopOperationUtils.IgnoreErrorsLoopContext.Operation.RunStep(ILoopContext context)
ClientConnectionId:48337d16-1e7a-4442-a86b-cb508f53ff6f
Error Number:-2,State:0,Class:11

 

Нравится

1 комментарий

Мне кажется, ошибка в логах  ProcessMaintenanceLog  связана с архивацией журнала процессов и не относится к неудачному входу. Посмотрите на ошибки в файлах Error.log (особенно в том, который относится к странице логина, не в папке \0\).

 

Также посмотрите в браузере в «Инструментах разработчика» обмен информацией с AuthService.svc, возможно, там будет больше информации.

 

Возможно, не хватает места на диске у сервера. Или требуется очистка Redis (иногда ещё бывает нужно перезапустить саму программу redis-cli.exe).

 

Если ничего обнаружить не получится, лучше обратиться в поддержку.

Показать все комментарии