private static LoginCredentials CreateLoginCredentials(string loginId, string name, SessionToken token) { var credentials = new LoginCredentials { UserName = loginId, DisplayName = name, SessionToken = token }; return credentials; }
public SessionInfo Login(string userName, string password, string appName) { if (string.IsNullOrEmpty(userName)) { throw new ArgumentException(SR.UserIDIsEmpty); } if (string.IsNullOrEmpty(password)) { throw new ArgumentException(SR.PasswordIsEmpty); } Platform.CheckForEmptyString(password, "password"); Platform.CheckForEmptyString(appName, "appName"); SessionInfo session = null; Platform.GetService( delegate(IAuthenticationService service) { try { var request = new InitiateSessionRequest(userName, appName, Dns.GetHostName(), password) { GetAuthorizations = true }; InitiateSessionResponse response = service.InitiateSession(request); if (response != null) { var credentials = new LoginCredentials { UserName = userName, DisplayName = response.DisplayName, SessionToken = response.SessionToken, Authorities = response.AuthorityTokens, DataAccessAuthorityGroups = response.DataGroupOids, EmailAddress = response.EmailAddress }; var user = new CustomPrincipal(new CustomIdentity(userName, response.DisplayName), credentials); Thread.CurrentPrincipal = user; session = new SessionInfo(user); session.User.WarningMessages = response.WarningMessages; // Note: need to insert into the cache before calling SessionInfo.Validate() SessionCache.Instance.AddSession(response.SessionToken.Id, session); session.Validate(); Platform.Log(LogLevel.Info, "{0} has successfully logged in.", userName); } } catch (FaultException <PasswordExpiredException> ex) { throw ex.Detail; } catch (FaultException <UserAccessDeniedException> ex) { throw ex.Detail; } catch (FaultException <RequestValidationException> ex) { throw ex.Detail; } } ); return(session); }
public SessionInfo Login(string userName, string password, string appName) { if (string.IsNullOrEmpty(userName)) throw new ArgumentException(SR.UserIDIsEmpty); if (string.IsNullOrEmpty(password)) throw new ArgumentException(SR.PasswordIsEmpty); Platform.CheckForEmptyString(password, "password"); Platform.CheckForEmptyString(appName, "appName"); SessionInfo session = null; Platform.GetService( delegate(IAuthenticationService service) { try { var request = new InitiateSessionRequest(userName, appName, Dns.GetHostName(), password) { GetAuthorizations = true }; InitiateSessionResponse response = service.InitiateSession(request); if (response != null) { var credentials = new LoginCredentials { UserName = userName, DisplayName = response.DisplayName, SessionToken = response.SessionToken, Authorities = response.AuthorityTokens, DataAccessAuthorityGroups = response.DataGroupOids, EmailAddress = response.EmailAddress }; var user = new CustomPrincipal(new CustomIdentity(userName, response.DisplayName),credentials); Thread.CurrentPrincipal = user; session = new SessionInfo(user); session.User.WarningMessages = response.WarningMessages; // Note: need to insert into the cache before calling SessionInfo.Validate() SessionCache.Instance.AddSession(response.SessionToken.Id, session); session.Validate(); Platform.Log(LogLevel.Info, "{0} has successfully logged in.", userName); } } catch (FaultException<PasswordExpiredException> ex) { throw ex.Detail; } catch(FaultException<UserAccessDeniedException> ex) { throw ex.Detail; } catch (FaultException<RequestValidationException> ex) { throw ex.Detail; } } ); return session; }
public CustomPrincipal(IIdentity identity, LoginCredentials credentials) { _identity = identity; _credentials = credentials; WarningMessages = new List<string>(); }
public CustomPrincipal(IIdentity identity, LoginCredentials credentials) { _identity = identity; _credentials = credentials; }
public CustomPrincipal(IIdentity identity, LoginCredentials credentials) { _identity = identity; _credentials = credentials; WarningMessages = new List <string>(); }