public static bool CheckAuthorization(string authorization_token, PeerCastStation.Core.AccessControlInfo acinfo) { if (!acinfo.AuthorizationRequired || acinfo.AuthenticationKey == null) { return(true); } if (authorization_token == null) { return(false); } var authorized = false; try { var authorization = System.Text.Encoding.ASCII.GetString(Convert.FromBase64String(authorization_token)).Split(':'); if (authorization.Length >= 2) { var user = authorization[0]; var pass = String.Join(":", authorization.Skip(1).ToArray()); authorized = acinfo.CheckAuthorization(user, pass); } } catch (FormatException) { } catch (ArgumentException) { } return(authorized); }
public static bool CheckAuthorization(PeerCastStation.HTTP.HTTPRequest request, PeerCastStation.Core.AccessControlInfo acinfo) { return(CheckAuthorization(GetAuthorizationToken(request), acinfo)); }