AppHarbor.Web.Security.CookieProtector.Validate C# (CSharp) Method

Validate() public method

public Validate ( string cookie, byte &data ) : bool
cookie string
data byte
return bool
		public bool Validate(string cookie, out byte[] data) 
		{
			data = null;
			try 
			{

				var versionedCookieData = Convert.FromBase64String(UnescapeCookie(cookie));
				
				if (versionedCookieData.Length == 0 || versionedCookieData[0] != 0)
				{
					return false;
				}

				var cookieData = new byte[versionedCookieData.Length - 1];
				Buffer.BlockCopy(versionedCookieData, 1, cookieData, 0, cookieData.Length);

				if (!_validation.Validate(cookieData))
				{
					return false;
				}

				cookieData = _validation.StripSignature(cookieData);
				cookieData = _encryption.Decrypt(cookieData);

				data = cookieData;
				return true;
			}
			catch 
			{
				return false;
			}
		}

Same methods

CookieProtector::Validate ( string cookie, string &data ) : bool

Usage Example

Beispiel #1
0
        public byte[] GetTagData()
        {
            var cookie = _context.Request.Cookies[_configuration.CookieName];

            if (cookie != null)
            {
                using (var protector = new CookieProtector(_configuration))
                {
                    byte[] data;
                    protector.Validate(cookie.Value, out data);
                    var authenticationCookie = AuthenticationCookie.Deserialize(data);
                    return(authenticationCookie.Tag);
                }
            }

            return(null);
        }
All Usage Examples Of AppHarbor.Web.Security.CookieProtector::Validate