UserLoginStrategyBlockUserIfRequiredAndGetExceptionAsync - метод
Метод вызывается при неверно введённом пароле. Блокирует пользователя, если этого требуют настройки,
и возвращает исключение с кодом ошибки в случае блокировки пользователя.
Пространство имён: Tessa.Platform.RuntimeСборка: Tessa (в Tessa.dll) Версия: 3.6.0.24
public ValueTask<SessionException> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo userInfo,
IServerSecurityOptions options,
DateTime utcNow,
CultureInfo uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo, SessionException, CancellationToken, ValueTask> afterRequestFuncAsync = null,
CancellationToken cancellationToken = default
)
Public Function BlockUserIfRequiredAndGetExceptionAsync (
userInfo As ISessionUserInfo,
options As IServerSecurityOptions,
utcNow As DateTime,
uiCulture As CultureInfo,
utcOffset As TimeSpan,
Optional afterRequestFuncAsync As Func(Of ISessionUserInfo, SessionException, CancellationToken, ValueTask) = Nothing,
Optional cancellationToken As CancellationToken = Nothing
) As ValueTask(Of SessionException)
public:
virtual ValueTask<SessionException^> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo^ userInfo,
IServerSecurityOptions^ options,
DateTime utcNow,
CultureInfo^ uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo^, SessionException^, CancellationToken, ValueTask>^ afterRequestFuncAsync = nullptr,
CancellationToken cancellationToken = CancellationToken()
) sealed
abstract BlockUserIfRequiredAndGetExceptionAsync :
userInfo : ISessionUserInfo *
options : IServerSecurityOptions *
utcNow : DateTime *
uiCulture : CultureInfo *
utcOffset : TimeSpan *
?afterRequestFuncAsync : Func<ISessionUserInfo, SessionException, CancellationToken, ValueTask> *
?cancellationToken : CancellationToken
(* Defaults:
let _afterRequestFuncAsync = defaultArg afterRequestFuncAsync null
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> ValueTask<SessionException>
override BlockUserIfRequiredAndGetExceptionAsync :
userInfo : ISessionUserInfo *
options : IServerSecurityOptions *
utcNow : DateTime *
uiCulture : CultureInfo *
utcOffset : TimeSpan *
?afterRequestFuncAsync : Func<ISessionUserInfo, SessionException, CancellationToken, ValueTask> *
?cancellationToken : CancellationToken
(* Defaults:
let _afterRequestFuncAsync = defaultArg afterRequestFuncAsync null
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> ValueTask<SessionException>
- userInfo ISessionUserInfo
- Информация пользователя, связанная с безопасностью его сессии.
- options IServerSecurityOptions
- Объект с настройками безопасности сервера.
- utcNow DateTime
- Текущая дата и время DateTime.UtcNow. Используются для проверки необходимости блокировки пользователя.
- uiCulture CultureInfo
- Язык пользователя для отображения текста сообщений с ошибкой в исключении.
- utcOffset TimeSpan
- Смещение часового пояса пользователя по UTC. Используется для вывода даты окончания блокировки текстом.
- afterRequestFuncAsync FuncISessionUserInfo, SessionException, CancellationToken, ValueTask (Optional)
-
Функция, выполняющаяся после проверок внутри блокировки на поле с безопасностью для сотрудника,
или null, если дополнительных действий не требуется.
Обычно в этом метода выполняется удаление всех сессий этого сотрудника вызовом DeleteUserSessionsAsync(Guid, NullableGuid, CancellationToken),
если исключение в параметре не равно null, т.е. пользователь был заблокирован.
- cancellationToken CancellationToken (Optional)
- Объект, посредством которого можно отменить асинхронную задачу.
ValueTaskSessionException
Исключение с кодом и текстом ошибки, если пользователь был заблокирован после неверного ввода пароля,
или
null, если пользователь не был заблокирован.
IUserLoginStrategyBlockUserIfRequiredAndGetExceptionAsync(ISessionUserInfo, IServerSecurityOptions, DateTime, CultureInfo, TimeSpan, FuncISessionUserInfo, SessionException, CancellationToken, ValueTask, CancellationToken)