private static SecureSession CreateSession(string identifier, Instant instant = null) { if (instant == null) { instant = new Instant(); } DateTime now = DateTime.UtcNow; SecureSession result = new SecureSession(); result.Identifier = identifier; result.CreationDate = now; result.LastActivity = now; result.TimeOffset = instant.DiffInMilliseconds(now); result.IsActive = true; AsymmetricCipherKeyPair keys = RsaKeyGen.GenerateKeyPair(DefaultKeySize); result.AsymmetricKey = keys.ToPem(); AesKeyVectorPair kvp = new AesKeyVectorPair(); result.SymmetricKey = kvp.Key.EncryptWithPublicKey(keys.Public); result.SymmetricIV = kvp.IV.EncryptWithPublicKey(keys.Public); result.Save(); return(result); }
public ActionResult Update(Bam.Net.ServiceProxy.Secure.SecureSession dao) { try { dao.Save(); return(Json(new { Success = true, Message = "", Dao = dao.ToJsonSafe() })); } catch (Exception ex) { return(GetErrorResult(ex)); } }
private static SecureSession CreateFromFilter(IQueryFilter filter, Database database = null) { Database db = database ?? Db.For <SecureSession>(); var dao = new SecureSession(); filter.Parameters.Each(p => { dao.Property(p.ColumnName, p.Value); }); dao.Save(db); return(dao); }