Example #1
0
        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);
        }
Example #2
0
 public static bool CheckAuthorization(PeerCastStation.HTTP.HTTPRequest request, PeerCastStation.Core.AccessControlInfo acinfo)
 {
     return(CheckAuthorization(GetAuthorizationToken(request), acinfo));
 }