Clase: Mongo::Auth::Scram Privado

Hereda:
Base
  • Objeto
Mostrar todo
Definido en:
lib/mongo/auth/scram.rb,
lib/mongo/auth/scram/conversation.rb

Overview

Esta clase forma parte de una API privada. Evita usar esta clase si es posible, ya que puede ser eliminada o modificada en el futuro.

Define el comportamiento para la autenticación SCRAM.

Desde:

  • 2.0.0

Subclases conocidas directas

Scram256

Definido bajo Namespace

clase: Conversación

Resumen de constantes colapsar

MECANISMO =

Esta constante es parte de una API privada. Deberías evitar usar esta constante si es posible, ya que podría ser retirada o cambiada en el futuro.

El string del mecanismo de autenticación.

Desde:

  • 2.0.0

'SCRAM-SHA-1'

Resumen de atributos de la instancia colapsar

Atributos heredados de Base

#conexión, #usuario

Resumen del método de instancia colapsar

Detalles del Constructor

#initialize(user, connection, **opts) ⇒ Scram

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Inicializa el autenticador Scram.

Parámetros:

  • usuario (Auth::User)

    El usuario debe autenticarse.

  • Conexión (Mongo::Connection)

    La conexión para autenticarse.

  • opciones (encriptada)

    un conjunto personalizable de opciones

Hash de opciones (**opts):

  • speculative_auth_client_nonce (String | nil)

    El nonce del cliente usado en la autenticación especulativa en la conexión especificada que produjo el resultado de autenticación especulativa especificado.

  • speculative_auth_result (BSON::Document | nil)

    El valor del campo speculativeAuthenticate de la respuesta de hello del handshake en la conexión especificada.

Desde:

  • 2.0.0



37
38
39
40
41
# Archivo 'lib/mongo/auth/scram.rb', línea 37

def inicializar(usuario, Conexión, **opciones)
  super
  @speculative_auth_client_nonce = opciones[:speculative_auth_client_nonce]
  @speculative_auth_result = opciones[resultados_autentificación_especulativos]
end

Detalles de atributo de instancias

#speculative_auth_client_nonceString | nil (solo lectura)

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve El nonce de cliente utilizado en la autenticación especulativa en la conexión actual.

Devuelve:

  • (String | nil)

    El nonce del cliente utilizado en la autenticación especulativa en la conexión actual.

Desde:

  • 2.0.0



45
46
47
# Archivo 'lib/mongo/auth/scram.rb', línea 45

def speculative_auth_client_nonce
  @speculative_auth_client_nonce
end

#speculative_auth_resultBSON::documento | nil (solo lectura)

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el valor del campo speculativeAuthenticate de la respuesta hello del handshake en la conexión actual.

Devuelve:

  • (BSON::Document | nil)

    El valor del campo speculativeAuthenticate de la respuesta hello del handshake en la conexión actual.

Desde:

  • 2.0.0



49
50
51
# Archivo 'lib/mongo/auth/scram.rb', línea 49

def speculative_auth_result
  @speculative_auth_result
end

Detalles del método de instancia

#conversaciónObjeto

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Desde:

  • 2.0.0



51
52
53
54
55
# Archivo 'lib/mongo/auth/scram.rb', línea 51

def conversación
  @conversation ||= sí mismo.clase.const_get(:Conversación).Nuevo(
    usuario, Conexión, client_nonce: speculative_auth_client_nonce
  )
end

#loginBSON::Document

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Inicia sesión del usuario en la conexión actual.

Devuelve:

  • (BSON::Document)

    El documento de la respuesta de autenticación.

Desde:

  • 2.0.0



60
61
62
63
64
65
# Archivo 'lib/mongo/auth/scram.rb', línea 60

def 
  converse_multi_step(Conexión, conversación,
                      speculative_auth_result: speculative_auth_result).tocar hacer
    propagar Error::FaltaFirmaServidorScram a menos que conversación.server_verified?
  end
end