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

Protect() public method

public Protect ( byte data ) : string
data byte
return string
		public string Protect(byte[] data)
		{
			data = _encryption.Encrypt(data);
			data = _validation.Sign(data);

			var versionedData = new byte[data.Length + 1];
			Buffer.BlockCopy(data, 0, versionedData, 1, data.Length);
			return Convert.ToBase64String(versionedData);
		}

Same methods

CookieProtector::Protect ( string data ) : string

Usage Example

Beispiel #1
0
        public void SetCookie(string username, bool persistent = false, string[] roles = null, byte[] tag = null, DateTime?explicitExpiry = null)
        {
            var cookie = new AuthenticationCookie(0, Guid.NewGuid(), persistent, username, roles, tag);

            using (var protector = new CookieProtector(_configuration))
            {
                var httpCookie = new HttpCookie(_configuration.CookieName, protector.Protect(cookie.Serialize()))
                {
                    HttpOnly = true,
                    Secure   = _configuration.RequireSSL,
                };

                if (!string.IsNullOrEmpty(_configuration.Domain))
                {
                    httpCookie.Domain = _configuration.Domain;
                }

                if (persistent)
                {
                    if (explicitExpiry.HasValue)
                    {
                        httpCookie.Expires = explicitExpiry.Value;
                    }
                    else
                    {
                        httpCookie.Expires = cookie.IssueDate + _configuration.Timeout;
                    }
                }

                _context.Response.Cookies.Add(httpCookie);
            }
        }
All Usage Examples Of AppHarbor.Web.Security.CookieProtector::Protect