Для изменения размера нажмите или перетащите

IAuthenticationService - интерфейс

Служба аутентификации системы

Пространство имён:  EleWise.ELMA.Security.Services
Сборка:  EleWise.ELMA.SDK (в EleWise.ELMA.SDK.dll) Версия: 1.0.0.0
Синтаксис
C#
public interface IAuthenticationService

Тип IAuthenticationService предоставляет следующие члены.

Методы
  ИмяОписание
Открытый методGetActiveSessions
Получить информацию об активных авторизованных сессиях
Открытый методGetCurrentSession
Получить информацию о текущей активной сессии контекста
Открытый методGetCurrentUser
Получить текущего пользователя системы
Открытый методGetCurrentUserT
Получить текущего пользователя системы
Открытый методGetCurrentUserId
Получить идентификатор текущего авторизованного пользователя
Открытый методGetSessions
Получить информацию об авторизованных сессиях
Открытый методRemoveAllUserSessions
Удалить все авторизованные сессии указанного пользователя
Открытый методRemoveSession
Удалить авторизованную сессию
Открытый методSetAuthenticatedUserForRequest
Установить авторизованного пользователя только в рамках этого запроса
Открытый методSetAuthenticatedUserIdForRequest
Установить идентификатор авторизованного пользователя в рамках этого запроса
Открытый методSignIn(IUser, Boolean)
Авторизовать пользователя системы
Открытый методSignIn(IUser, Boolean, Boolean)
Авторизовать пользователя системы
Открытый методSignOut
Убрать авторизацию пользователя
В начало страницы
Примеры
//С помощью данного сервиса мы можем получить текущего пользователя,
//получить информацию о авторизованных сессиях. Так же предоставляется возможность
//удалять сессии.
//запишем сервис в переменную, чтобы с ним легче было работать
var service = Locator.GetServiceNotNull<IAuthenticationService>();

//чтобы получить текущего пользователя, используйте следующие функции:
//1. GetCurrentUser() - для получения системного пользователя (EleWise.ELMA.Security.IUser)
var currentUser = service.GetCurrentUser();

//2. GetCurrentUser<T>() - для получения пользователя определённого типа 
var currentUser2 = service.GetCurrentUser<EleWise.ELMA.Security.Models.IUser>();


//чтобы авторизовать пользователя в системе, используйте функцию SignIn(user, rememberMeSet)
service.SignIn(UserManager.Instance.Load(4), false);

//чтобы убрать авторизацию пользователя, используйте функцию SignOut();
//убирает авторизацию текущего пользователя
service.SignOut();

//для установки авторизированного пользователя в рамках
//одного запроса используйте функцию SetAuthenticatedUserForRequest
service.SetAuthenticatedUserForRequest(UserManager.Instance.Load(5));

//для получения информации о активных авторизированных сессиях используйте функцию GetActiveSessions()
var activeSessions = service.GetActiveSessions();

//для получения информации о авторизированных сессиях используйте функцию GetSession(filter),
//где filter - экземпляр класса AuthenticatedSessionFilter. Данный фильтр предоставляет возможность
//фильтровать по двум полям:
//1.bool OnlyActive - выбирать только активные сессии;
//2.bool OnlyConcurrentUsers - выбирать только сессии пользователей с конкурентными лицензиями.
//Так же вместо filter можно передать null
var sessions = service.GetSessions(null); 

//чтобы удалить сессию по её тикету, используйте функцию RemoveSession(ticketId)
service.RemoveSession(activeSession.First().TicketUid);

//чтобы удалить все авторизованные сессии пользователя, используйте функцию RemoveAllUserSessions(userId)
service.RemoveAllUserSessions(user.Id);
См. также