Пример #1
0
 public void Serialize(BsonDocument doc, Token token)
 {
     doc["_version"]     = 1;
     doc["audience"]     = token.Audience;
     doc["claims"]       = _claimsSetSerializer.Serialize(token.Claims);
     doc["client"]       = _clientSerializer.Serialize(token.Client);
     doc["creationTime"] = token.CreationTime;
     doc["issuer"]       = token.Issuer;
     doc["lifetime"]     = token.Lifetime;
     doc["type"]         = token.Type;
 }
        public BsonDocument Serialize(string key, AuthorizationCode code)
        {
            var doc = new BsonDocument();

            doc["_id"]             = key;
            doc["_version"]        = 1;
            doc["_clientId"]       = code.ClientId;
            doc["_subjectId"]      = code.SubjectId;
            doc["_expires"]        = code.CreationTime.AddSeconds(code.Client.AuthorizationCodeLifetime);
            doc["creationTime"]    = code.CreationTime;
            doc["isOpenId"]        = code.IsOpenId;
            doc["redirectUri"]     = code.RedirectUri.ToString();
            doc["wasConsentShown"] = code.WasConsentShown;
            doc["subject"]         = SerializeIdentities(code);
            doc["client"]          = _clientSerializer.Serialize(code.Client);
            var requestedScopes = new BsonArray();

            foreach (Scope scope in code.RequestedScopes)
            {
                requestedScopes.Add(_scopeSerializer.Serialize(scope));
            }
            doc["requestedScopes"] = requestedScopes;
            return(doc);
        }