Orientdb: User or password not valid for database with Admin role

Created on 17 Jul 2015  路  18Comments  路  Source: orientechnologies/orientdb

Orientdb 2.0.12

Connecting to database [plocal:../databases/bodyclub24_prod] with user 'bc24'...
2015-07-17 19:24:37:761 WARNING {db=bc24_test} segment file 'database.ocf' was not closed correctly last time [OSingleFileSegment]
2015-07-17 19:24:37:820 WARNING {db=bc24_test} Storage bodyclub24_prod was not closed properly. Will try to restore from write ahead log. [OL                                                                  ocalPaginatedStorage]
2015-07-17 19:24:37:907 WARNING {db=bc24_test} Record com.orientechnologies.orient.core.storage.impl.local.paginated.wal.OCheckpointEndRecord                                                                  {lsn=OLogSequenceNumber{segment=0, position=352679}} will be skipped during data restore. [OLocalPaginatedStorage]
2015-07-17 19:24:37:908 WARNING {db=bc24_test} Non tx operation was used during data modification we will need index rebuild. [OLocalPaginate                                                                  dStorage]
2015-07-17 19:24:38:127 SEVERE {db=bc24_test}  [OIndexDictionary]
Error: com.orientechnologies.orient.core.exception.OSecurityAccessException: User or password not valid for database: 'bc24_test'

Steps:

  1. Create database and user bc24 with admin, read, write rights
  2. Shutdown database with ./orientdb.sh stop
  3. Log into console.sh and try to connect to plocal storage connect plocal:../databases/bc24_test bc24 XXXXXXXX

Doesn`t occurs in Orientdb 2.0.10

question

Most helpful comment

Solved the issue.
enter username and password as "admin" and "admin"

All 18 comments

please help, I would like to upgrade to 2.0.12.

Unable to reproduce it with the steps given:

$ ./bin/console.sh

OrientDB console v.2.0.12 (build UNKNOWN@r; 2015-07-18 07:31:23+0000) www.orientechnologies.com
Type 'help' to display all the supported commands.
2015-07-18 13:25:47:674 WARNING Not enough physical memory available for DISKCACHE: 1,542MB (heap=494MB). Set lower Maximum Heap (-Xmx setting on JVM) and restart OrientDB. Now running with DISKCACHE=256MB [orientechnologies]
Installing extensions for GREMLIN language v.2.6.0

orientdb> connect plocal:../databases/bc24_test bc24 bc24

Connecting to database [plocal:../databases/bc24_test] with user 'bc24'...OK

orientdb {db=bc24_test}>

however when i try to login using root user, i am getting the same exception reported:

orientdb> connect plocal:../databases/bc24_test root rootpw

Connecting to database [plocal:../databases/bc24_test] with user 'root'...
2015-07-18 13:32:51:273 WARNING {db=bc24_test} segment file 'database.ocf' was not closed correctly last time [OSingleFileSegment]
Error: com.orientechnologies.orient.core.exception.OSecurityAccessException: User or password not valid for database: 'bc24_test'

Hi @nagarajasr do you create the user in the studio?

yes, in studio.

mmh I will test it again.

Is this issue still valid?

sry currently no time for testing. I will check it during this week.

@lvca: This issue still exists in 2.1.4 for root user:

orientdb> connect plocal:../databases/test_export root admin

Connecting to database [plocal:../databases/test_export] with user 'root'...
Error: com.orientechnologies.orient.core.exception.OSecurityAccessException: User or password not valid for database: 'test_export'

Can connect with remote: and with studio.

+1 This issue still exists in 2.1.4 for root user

in 2.1.6 too ...

Hi all,

I think it's a structural problem: database level users like "admin" are stored in the database itself, so when you connect to a database you can just check them.

On the other hand, root user is stored in the orientdb-server-config.xml file, inside the /config dir.

Now consider this scenario: you have two different OrientDB instances

/instance1/orientdb
/instance2/orientdb

if you run

/instance1/orientdb/bin/consile.sh

orientdb> connect plocal:/instance2/orientdb/databases/foo root rootPwd

should the console check for the root password in

/instance1/orientdb/config/orientdb-server-config.xml

or in

/instance2/orientdb/config/orientdb-server-config.xml

?

Currently it does neither, this is why it doesn't work.

It is a purely conceptual problem, so any comments are welcome

Thanks

Luigi

:+1: same problem with the root user.

馃憤 I have the same problem with root user. Is there a recommendation on how to get around this?

Have you guys (@mamoit and @larryaasen) resolved by following the luigi's comment?

@lvca we can hardly expect a resolution from @luigidellaquila comment, as he himself seems to be asking a fundamental question how server authentication should work.

@luigidellaquila how about user having to explicitly specify which server-config.xml to use to connect to a DB (used only for opening DB in plocal mode), rather than console client trying to resolve the server-config.xml automatically (with potentially unpredictable results)

I do not have a recommendation for solving this problem. Instead, I used plocal during the connection and used admin/admin which I did not realize was already setup.

Some of the operations require a server user, like "create database". So a server user has to be provided for such operations. For all the rest, the database's user is ok. By the way, with 2.2 we hashed+salt password of server's users too.

Solved the issue.
enter username and password as "admin" and "admin"

Was this page helpful?
0 / 5 - 0 ratings