public loginController(IUserRepository userRepo, IModelTokenGenerator <Mdls.User> tokenG, IDecryptProvider decryptProvider, IJwtSecurityProvider tokenp) { userRepository = userRepo; tokenGenerator = tokenG; decryptionProvider = decryptProvider; tokenProvider = tokenp; }
public void JwtSecurityProviderCreated() { IServiceProvider sp = StartUp.ServiceProvider; IJwtSecurityProvider jwtSecurityProvider = sp.GetService <IJwtSecurityProvider>(); IModelTokenGenerator <User> TokenGenerator = GetTokenGenerator(); string token = jwtSecurityProvider.WriteToken <User>(TokenGenerator); ReadOnlyCollection <Claim> claims = jwtSecurityProvider.GetClaimsCollection(token); Assert.IsNotNull(token); Assert.IsNotNull(claims.GetKey(UserKey)); Assert.IsNotNull(claims.GetKey(ClaimTypes.Role)); //string role = claims.GetKey(ClaimTypes.Role); //IEncryptionProvider encryptionProvider = sp.GetService<IEncryptionProvider>(); //string text = "I am sergio"; //string encrypted = encryptionProvider.Encrypt(text); //string decrypted = encryptionProvider.Decrypt(encrypted); //DecryptProvider decryptService = new DecryptProvider(); //EncryptionKeyProvider encryptProvider = new EncryptionKeyProvider(decryptService); //string enc = encryptProvider.Encrypt(text); //string key = encryptProvider.EncryiptionKey; //var value = decryptService.Decrypt(enc, key); //Assert.IsTrue(text == decrypted); //Assert.IsNotNull(token); }
public string WriteToken <T>(IModelTokenGenerator <T> tokenGenerator) { string token = jwtSecurityProvider.WriteToken <T>(tokenGenerator); string encrypted = Encrypt(token); return(encrypted); }
public string WriteToken <T>(IModelTokenGenerator <T> tokenGenerator) { JwtSecurityTokenHandler tokenHandler = new JwtSecurityTokenHandler(); ClaimsIdentity Identity = tokenGenerator.getClaims; SecurityTokenDescriptor descriptor = GetTokenDescriptor(Identity); SecurityToken token = tokenHandler.CreateToken(descriptor); return(tokenHandler.WriteToken(token)); }
public void TokenEncryptionProviderEncrypts() { IServiceProvider sp = StartUp.ServiceProvider; ITokenEncryptionProvider encryptionProvider = sp.GetService <ITokenEncryptionProvider>(); IModelTokenGenerator <User> tokenGenerator = GetTokenGenerator(); string encryptedToken = encryptionProvider.WriteToken <User>(tokenGenerator); ReadOnlyCollection <Claim> claims = encryptionProvider.GetClaimsCollection(encryptedToken); Assert.IsNotNull(encryptedToken); Assert.IsNotNull(claims.GetKey(UserKey)); Assert.IsNotNull(claims.GetKey(ClaimTypes.Role)); //string text = "I am sergio"; //string encrypted = encryptionProvider.Encrypt(text); //string decrypted = encryptionProvider.Decrypt(encrypted); //Assert.IsTrue(text == decrypted); }
public IModelTokenGenerator <User> GetTokenGenerator() { IServiceProvider sp = StartUp.ServiceProvider; IModelTokenGenerator <User> tokenGenerator = sp.GetService <IModelTokenGenerator <User> >(); User user = new User { id = "597b468a7ab542adcc6d247f", Role = RoleType.Participant }; Dictionary <string, Func <User, object> > contract = new Dictionary <string, Func <User, object> >() { { UserKey, (User u) => u.id }, { ClaimTypes.Role, (User u) => (int)u.Role } }; tokenGenerator.Create(user, contract); ClaimsIdentity identity = tokenGenerator.getClaims; Assert.IsNotNull(identity); return(tokenGenerator); }