Igniters, Current Ignite has no means for user authentication and authorization. I believe this is a big flaw in the product and we should start working on it. As a first step I would like to propose to add simple username/password authentication for our thin clients ("thin", JDBC, ODBC).
Proposed design: 1) Define hidden persistent cache for user credentials 2) Credentials will be stored in a form of [username + hash] [1] 3) Default superuser ignite/ignite will be defined by default. This is the only user which can create other users 4) Authentication will be disabled by default to let users migrate from previous versions easily 5) Clients will optionally pass username and password to the cluster during handshake phase. 6) Password will be delivered in a *plain form*, because otherwise clients will have to implement complex hashing logic on their own. SSL will be used to protect passwords. 7) Create SQL commands for user management (CREATE USER, ALTER USER, DROP USER) 8) May be we will also create native public API. This will be our foundation for further security enhancements, such as: - Node authentication - Authorization mechanics - Various no-password authentication techniques (e.g. certificate-based) Please share your thoughts on proposed design. Vladimir. [1] Exact cryptographic function is to be defined.