public static ISession CreateSession(this IDatabase database, string userName, string password, IsolationLevel isolation) { if (!database.Authenticate(userName, password)) throw new InvalidOperationException(String.Format("Unable to create a session for user '{0}': not authenticated.", userName)); return database.CreateSession(userName, isolation); }
public static ISession CreateUserSession(this IDatabase database, string userName, string password) { var user = database.Authenticate(userName, password); if (user == null) throw new InvalidOperationException(String.Format("Unable to create a session for user '{0}': not authenticated.", userName)); return database.CreateUserSession(user); }
public static bool CanAuthenticate(this AuthenticationStandard authenticationStandard) { object authenticate; try { authenticate = authenticationStandard.Authenticate(ApplicationHelper.Instance.Application.CreateObjectSpace(SecuritySystem.LogonParameters.GetType())); } catch (AuthenticationException) { return false; } return authenticate != null; }
public static async Task<IIdentity> AuthenticateAsync(this OwinRequest request, string authenticationType) { List<IIdentity> identities = new List<IIdentity>(); await request.Authenticate(new string[] { authenticationType }, (identity, ignore1, ignore2, ignore3) => { identities.Add(identity); }, null); return identities.SingleOrDefault(); }
public static string Authorize(this BaseProtocolClient ingoingMailClient, MailServerSettings settings, int waitTimeout = 5000, ILogger log = null) { if (log == null) log = new NullLogger(); string lastResponse; switch (settings.EncryptionType) { case EncryptionType.SSL: var timeout = TimeSpan.FromMinutes(3); // 3 minutes log.Debug("SSL connecting to {0} (timeout = {1} minutes)", settings.Url, timeout.TotalMinutes); lastResponse = ingoingMailClient.ConnectSsl(settings.Url, settings.Port, (int)timeout.TotalMilliseconds); break; default: log.Debug("PLAIN connecting to {0}", settings.Url); lastResponse = ingoingMailClient.ConnectPlain(settings.Url, settings.Port); if (ingoingMailClient is SmtpClient && (settings.AuthenticationType != SaslMechanism.None || settings.EncryptionType == EncryptionType.StartTLS)) { lastResponse = ingoingMailClient.SendEhloHelo(); } if (settings.EncryptionType == EncryptionType.StartTLS) { log.Debug("StartTLS {0}", settings.Url); lastResponse = ingoingMailClient.StartTLS(settings.Url); } break; } if (settings.AuthenticationType == SaslMechanism.Login) { log.Debug("Login as {0} with secret password", settings.AccountName); lastResponse = ingoingMailClient.Login(settings.AccountName, settings.AccountPass); } else { if (ingoingMailClient is SmtpClient && settings.AuthenticationType == SaslMechanism.None) { log.Debug("Authentication not required"); return lastResponse; } log.Debug("Authenticate as {0} with secret password", settings.AccountName); lastResponse = ingoingMailClient.Authenticate(settings.AccountName, settings.AccountPass, settings.AuthenticationType); } return lastResponse; }
public static async Task<ClaimsIdentity> GetExternalIdentity(this HttpContext context) { return await context.Authenticate(Microsoft.Owin.Security.Forms.FormsAuthenticationDefaults.ExternalAuthenticationType); }
/// <summary></summary> /// <param name="context"></param> /// <param name="authenticationType"></param> /// <returns></returns> public static Task<ClaimsIdentity> GetExternalIdentity(this HttpContext context) { return context.Authenticate("External"); }