@Description( "Change the current user's password." ) @Procedure( name = "dbms.security.changePassword", mode = DBMS ) public void changePassword( @Name( "password" ) String password ) throws InvalidArgumentsException, IOException { // TODO: Deprecate this and create a new procedure that takes password as a byte[] if ( securityContext.subject() == AuthSubject.ANONYMOUS ) { throw new AuthorizationViolationException( "Anonymous cannot change password" ); } userManager.setUserPassword( securityContext.subject().username(), UTF8.encode( password ), false ); securityContext.subject().setPasswordChangeNoLongerRequired(); }
userManagerSupplier.getUserManager( loginContext.subject(), false ) .setUserPassword( username, newPassword, false ); // NOTE: This will overwrite newPassword with zeroes loginContext.subject().setPasswordChangeNoLongerRequired(); break; default:
@Before public void setup() throws InvalidAuthTokenException, IOException { fs = new EphemeralFileSystemAbstraction(); db = (GraphDatabaseAPI) createGraphDatabase( fs ); authManager = db.getDependencyResolver().resolveDependency( BasicAuthManager.class ); admin = login( "neo4j", "neo4j" ); admin.subject().setPasswordChangeNoLongerRequired(); }
private void setUserPassword( String username, String newPassword, boolean requirePasswordChange ) throws IOException, InvalidArgumentsException { userManager.setUserPassword( username, newPassword, requirePasswordChange ); if ( securityContext.subject().hasUsername( username ) ) { securityContext.subject().setPasswordChangeNoLongerRequired(); } } }
@Description( "Change the current user's password." ) @Procedure( name = "dbms.security.changePassword", mode = DBMS ) public void changePassword( @Name( "password" ) String password ) throws InvalidArgumentsException, IOException { // TODO: Deprecate this and create a new procedure that takes password as a byte[] if ( securityContext.subject() == AuthSubject.ANONYMOUS ) { throw new AuthorizationViolationException( "Anonymous cannot change password" ); } userManager.setUserPassword( securityContext.subject().username(), UTF8.encode( password ), false ); securityContext.subject().setPasswordChangeNoLongerRequired(); }
userManagerSupplier.getUserManager( loginContext.subject(), false ) .setUserPassword( username, newPassword, false ); // NOTE: This will overwrite newPassword with zeroes loginContext.subject().setPasswordChangeNoLongerRequired(); break; default: