Viking Hammer

Authenticating with MongoMapper

For my new poll4.me application, I’m using MongoDB and need to be able to connect to the authenticated database in production, but not necessarily in my development environment. I couldn’t find anywhere online that shows specifically how to do that, so I’ll post it here.

MongoMapper.connection = Mongo::Connection.new(config['db_hostname'])
MongoMapper.database = config['db_name']
if config['db_username']
    MongoMapper.connection[config['db_name']].authenticate(config['db_username'], config['db_password'])
end

Note that I’m using MongoMapper, which is excellent.

The key here is that I set up a connection using the hostname (or IP address) of the database server, then set the database I want to use. Then if I’ve specified authentication parameters, it attempts to authenticate against the database server. If I haven’t specified authentication information, this will assume I want to try to connect unauthenticated (and my database is running in non-authenticated mode).

Pretty simple.



Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>