Ejemplo n.º 1
0
 public UserManagementService(IODispatcher ioDispatcher,
                              PasswordHashAlgorithm passwordHashAlgorithm, bool skipInitializeStandardUsersCheck,
                              TaskCompletionSource <bool> tcs)
 {
     _log                              = Serilog.Log.ForContext <UserManagementService>();
     _ioDispatcher                     = ioDispatcher;
     _passwordHashAlgorithm            = passwordHashAlgorithm;
     _skipInitializeStandardUsersCheck = skipInitializeStandardUsersCheck;
     _tcs                              = tcs;
 }
Ejemplo n.º 2
0
        public InternalAuthenticationProvider(ISubscriber subscriber, IODispatcher ioDispatcher, PasswordHashAlgorithm passwordHashAlgorithm,
                                              int cacheSize, bool logFailedAuthenticationAttempts)
        {
            _ioDispatcher                    = ioDispatcher;
            _passwordHashAlgorithm           = passwordHashAlgorithm;
            _userPasswordsCache              = new LRUCache <string, Tuple <string, ClaimsPrincipal> >(cacheSize);
            _logFailedAuthenticationAttempts = logFailedAuthenticationAttempts;

            var userManagement = new UserManagementService(ioDispatcher, _passwordHashAlgorithm,
                                                           skipInitializeStandardUsersCheck: false, _tcs);

            subscriber.Subscribe <UserManagementMessage.Create>(userManagement);
            subscriber.Subscribe <UserManagementMessage.Update>(userManagement);
            subscriber.Subscribe <UserManagementMessage.Enable>(userManagement);
            subscriber.Subscribe <UserManagementMessage.Disable>(userManagement);
            subscriber.Subscribe <UserManagementMessage.Delete>(userManagement);
            subscriber.Subscribe <UserManagementMessage.ResetPassword>(userManagement);
            subscriber.Subscribe <UserManagementMessage.ChangePassword>(userManagement);
            subscriber.Subscribe <UserManagementMessage.Get>(userManagement);
            subscriber.Subscribe <UserManagementMessage.GetAll>(userManagement);
            subscriber.Subscribe <SystemMessage.BecomeLeader>(userManagement);
            subscriber.Subscribe <SystemMessage.BecomeFollower>(userManagement);
        }