Exemple #1
0
        public async Task Test_Add_Protected_Secret_Async()
        {
            var dao = new IdentityServer3CassandraDao();
            await dao.EstablishConnectionAsync();

            var value               = Guid.NewGuid().ToString();
            var valueProtected      = Guid.NewGuid().ToString();
            TripleDesEncryption tde = new TripleDesEncryption("test");
            var eValueProtected     = tde.Encrypt(valueProtected);

            ProtectedSecretHandle handle = new ProtectedSecretHandle()
            {
                ClientId       = Guid.NewGuid().ToString(),
                Value          = value,
                ProtectedValue = eValueProtected
            };

            await dao.AddSecretProtectedValue(handle);

            ProtectedSecretQueryValues queryValues = new ProtectedSecretQueryValues()
            {
                ClientId = handle.ClientId,
                Value    = handle.Value
            };

            var record = await dao.FindSecretProtectedValue(queryValues);

            var fetchedValueProtected = tde.Decrypt(record.ProtectedValue);

            Assert.AreEqual(valueProtected, fetchedValueProtected);

            await dao.DeleteSecretProtectedValue(queryValues);

            record = await dao.FindSecretProtectedValue(queryValues);

            Assert.IsNull(record);
        }