Clase: Mongo::Auth::Scram Private

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. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

Define el comportamiento para la autenticación SCRAM.

Desde:

  • 2.0.0

Subclases conocidas directas

Lárgate256

Definido en el espacio de nombres

Clases: Conversación

Colapso delresumen constante

MECANISMO =

Esta constante forma parte de una API privada. Debe evitar usarla siempre que sea posible, ya que podría eliminarse o modificarse en el futuro.

La cadena del mecanismo de autenticación.

Desde:

  • 2.0.0

'LARGA-SHA-1 '.freeze

Colapso delresumen de atributos de instancia

Atributos heredados de Base

#conexión, #usuario

Colapso del resumen del método de instancia

Detalles del constructor

#inicializar(usuario, conexión, **opciones) ⇒ Scram

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Inicializa el autenticador Scram.

Parámetros:

  • usuario (Auth::User)

    El usuario a autenticar.

  • conexión (Mongo::Conexión)

    La conexión para autenticarse.

  • opta (Hash)

    un conjunto personalizable de opciones

Opciones Hash (**opts):

  • speculative_auth_client_nonce (String | nil)

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

  • resultado de autenticación especulativa (BSON::Document | nil)

    El valor del campo speculativeAuthenticate de la respuesta de saludo del protocolo de enlace en la conexión especificada.

Desde:

  • 2.0.0



40
41
42
43
44
# Archivo 'lib/mongo/auth/scram.rb', línea 40

def inicializar(usuario, conexión, **opta)
  Super
  @nonce_de_cliente_de_autenticación_especulativa = opta[:nonce de cliente de autenticación especulativa]
  @resultado_de_autenticación_especulativa = opta[:resultado_de_autenticación_especulativa]
end

Detalles de los atributos de instancia

#speculative_auth_client_nonceCadena | nulo (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

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

Devuelve:

  • ( Cadena| nulo ) —

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

Desde:

  • 2.0.0



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

def speculative_auth_client_nonce
  @nonce_de_cliente_de_autenticación_especulativa
end

#resultado_de_autenticación_especulativaBSON::Documento | nulo (solo lectura)

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Devuelve el valor del campo speculativeAuthenticate de la respuesta de saludo del protocolo de enlace en la conexión actual.

Devuelve:

  • (BSON::Document | nil)

    El valor del campo speculativeAuthenticate de la respuesta de saludo del protocolo de enlace en la conexión actual.

Desde:

  • 2.0.0



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

def resultado de autenticación especulativa
  @resultado_de_autenticación_especulativa
end

Detalles del método de instancia

#conversaciónObjeto

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Desde:

  • 2.0.0



54
55
56
57
# Archivo 'lib/mongo/auth/scram.rb', línea 54

def conversación
  @conversación ||= yo.clase.const_get(:Conversación).Nuevo(
    usuario, conexión, client_nonce: speculative_auth_client_nonce)
end

#loginBSON::Document

Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.

Inicie sesión al usuario en la conexión actual.

Devuelve:

  • (BSON::Documento)

    El documento de la respuesta de autenticación.

Desde:

  • 2.0.0



62
63
64
65
66
67
68
69
70
# Archivo 'lib/mongo/auth/scram.rb', línea 62

def 
  converse_multi_paso(conexión, conversación,
    resultado de autenticación especulativa: resultado de autenticación especulativa,
  ).grifo hacer
    a no ser que conversación.server_verified?
      propagar Error::Falta la firma del servidor Scram
    end
  end
end