Class: Mongo::Auth::CR

Inherits:
Object
  • Object
show all
Defined in:
lib/mongo/auth/cr.rb,
lib/mongo/auth/cr/conversation.rb

Overview

Defines behaviour for MongoDB-CR authentication.

Since:

  • 2.0.0

Defined Under Namespace

Classes: Conversation

Constant Summary

MECHANISM =

The authentication mechinism string.

Since:

  • 2.0.0

'MONGODB-CR'.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(user) ⇒ CR

Instantiate a new authenticator.

Examples:

Create the authenticator.

Mongo::Auth::CR.new(user)

Parameters:

Since:

  • 2.0.0



41
42
43
# File 'lib/mongo/auth/cr.rb', line 41

def initialize(user)
  @user = user
end

Instance Attribute Details

#userMongo::Auth::User (readonly)

Returns The user to authenticate.

Returns:

Since:

  • 2.0.0



31
32
33
# File 'lib/mongo/auth/cr.rb', line 31

def user
  @user
end

Instance Method Details

#login(connection) ⇒ Protocol::Reply

Log the user in on the given connection.

Examples:

Log the user in.

user.(connection)

Parameters:

  • connection (Mongo::Connection)

    The connection to log into.

Returns:

Since:

  • 2.0.0



55
56
57
58
59
60
# File 'lib/mongo/auth/cr.rb', line 55

def (connection)
  conversation = Conversation.new(user)
  reply = connection.dispatch([ conversation.start ])
  reply = connection.dispatch([ conversation.continue(reply) ])
  conversation.finalize(reply)
end