Пример #1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Before public void setup() throws Throwable
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void Setup()
        {
            Fs            = new EvilFileSystem(this, new EphemeralFileSystemAbstraction());
            UserStoreFile = new File("dbms", "auth");
            RoleStoreFile = new File("dbms", "roles");
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.neo4j.server.security.auth.UserRepository userRepository = new org.neo4j.server.security.auth.FileUserRepository(fs, userStoreFile, logProvider);
            UserRepository userRepository = new FileUserRepository(Fs, UserStoreFile, LogProvider);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final RoleRepository roleRepository = new FileRoleRepository(fs, roleStoreFile, logProvider);
            RoleRepository roleRepository = new FileRoleRepository(Fs, RoleStoreFile, LogProvider);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.neo4j.server.security.auth.UserRepository initialUserRepository = org.neo4j.server.security.auth.CommunitySecurityModule.getInitialUserRepository(org.neo4j.kernel.configuration.Config.defaults(), logProvider, fs);
            UserRepository initialUserRepository = CommunitySecurityModule.getInitialUserRepository(Config.defaults(), LogProvider, Fs);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.neo4j.server.security.auth.UserRepository defaultAdminRepository = EnterpriseSecurityModule.getDefaultAdminRepository(org.neo4j.kernel.configuration.Config.defaults(), logProvider, fs);
            UserRepository defaultAdminRepository = EnterpriseSecurityModule.GetDefaultAdminRepository(Config.defaults(), LogProvider, Fs);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.neo4j.kernel.api.security.PasswordPolicy passwordPolicy = new org.neo4j.server.security.auth.BasicPasswordPolicy();
            PasswordPolicy         passwordPolicy         = new BasicPasswordPolicy();
            AuthenticationStrategy authenticationStrategy = new RateLimitedAuthenticationStrategy(Clocks.systemClock(), Config.defaults());

            Realm = new InternalFlatFileRealm(userRepository, roleRepository, passwordPolicy, authenticationStrategy, true, true, JobScheduler, initialUserRepository, defaultAdminRepository);
            Realm.init();
            Realm.start();
        }
Пример #2
0
        private bool RealUsersExist(Config config)
        {
            bool result   = false;
            File authFile = CommunitySecurityModule.getUserRepositoryFile(config);

            if (_outsideWorld.fileSystem().fileExists(authFile))
            {
                result = true;

                // Check if it only contains the default neo4j user
                FileUserRepository userRepository = new FileUserRepository(_outsideWorld.fileSystem(), authFile, NullLogProvider.Instance);
                try
                {
                    using (Lifespan life = new Lifespan(userRepository))
                    {
                        ListSnapshot <User> users = userRepository.PersistedSnapshot;
                        if (users.Values().Count == 1)
                        {
                            User user = users.Values()[0];
                            if (INITIAL_USER_NAME.Equals(user.Name()) && user.Credentials().matchesPassword(INITIAL_PASSWORD))
                            {
                                // We allow overwriting an unmodified default neo4j user
                                result = false;
                            }
                        }
                    }
                }
                catch (IOException)
                {
                    // Do not allow overwriting if we had a problem reading the file
                }
            }
            return(result);
        }