IUserLoginStrategyBlockUserIfRequiredAndGetExceptionAsync - метод |
Метод вызывается при неверно введённом пароле. Блокирует пользователя, если этого требуют настройки,
и возвращает исключение с кодом ошибки в случае блокировки пользователя.
Пространство имён:
Tessa.Platform.Runtime
Сборка:
Tessa (в Tessa.dll) Версия: 3.5.0.19
СинтаксисValueTask<SessionException> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo userInfo,
IServerSecurityOptions options,
DateTime utcNow,
CultureInfo uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo, SessionException, CancellationToken, ValueTask> afterRequestFuncAsync = null,
CancellationToken cancellationToken = default
)
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)
ValueTask<SessionException^> BlockUserIfRequiredAndGetExceptionAsync(
ISessionUserInfo^ userInfo,
IServerSecurityOptions^ options,
DateTime utcNow,
CultureInfo^ uiCulture,
TimeSpan utcOffset,
Func<ISessionUserInfo^, SessionException^, CancellationToken, ValueTask>^ afterRequestFuncAsync = nullptr,
CancellationToken cancellationToken = CancellationToken()
)
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>
Параметры
- userInfo
- Тип: Tessa.Platform.RuntimeISessionUserInfo
Информация пользователя, связанная с безопасностью его сессии. - options
- Тип: Tessa.Platform.RuntimeIServerSecurityOptions
Объект с настройками безопасности сервера. - utcNow
- Тип: SystemDateTime
Текущая дата и время DateTime.UtcNow. Используются для проверки необходимости блокировки пользователя. - uiCulture
- Тип: System.GlobalizationCultureInfo
Язык пользователя для отображения текста сообщений с ошибкой в исключении. - utcOffset
- Тип: SystemTimeSpan
Смещение часового пояса пользователя по UTC. Используется для вывода даты окончания блокировки текстом. - afterRequestFuncAsync (Optional)
- Тип: SystemFuncISessionUserInfo, SessionException, CancellationToken, ValueTask
Функция, выполняющаяся после проверок внутри блокировки на поле с безопасностью для сотрудника,
или null, если дополнительных действий не требуется.
Обычно в этом метода выполняется удаление всех сессий этого сотрудника вызовом DeleteUserSessionsAsync(Guid, NullableGuid, CancellationToken),
если исключение в параметре не равно null, т.е. пользователь был заблокирован.
- cancellationToken (Optional)
- Тип: System.ThreadingCancellationToken
Объект, посредством которого можно отменить асинхронную задачу.
Возвращаемое значение
Тип:
ValueTaskSessionException
Исключение с кодом и текстом ошибки, если пользователь был заблокирован после неверного ввода пароля,
или
null, если пользователь не был заблокирован.
См. также