Clase: Mongo::Auth::Aws::Conversation Privada

Hereda:
Base de conversaciones de Sasl Mostrar todo
Definido en:
lib/mongo/auth/aws/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 en torno a una única conversación MONGODB-AWS entre el cliente y el servidor.

Resumen constante

Constantes heredadas de SaslConversationBase

SaslConversationBase::CLIENT_CONTINUE_MESSAGE, SaslConversationBase::CLIENT_FIRST_MESSAGE

Resumen de atributos de instancia

Atributos heredados de ConversationBase

#conexión, #usuario

Colapso del resumen del método de instancia

Métodos heredados de SaslConversationBase

#comenzar

Métodos heredados de ConversationBase

#mensaje_de_compilación, #inicializar, #documento_de_autenticación_especulativa, #validar_fuente_de_autenticación_externa

Detalles del constructor

Esta clase hereda un constructor de Mongo::Auth::ConversationBase

Detalles del método de instancia

#continue(reply_document, connection) ⇒ Protocol::Message

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

Continuar la conversación de AWS. Esto envía el mensaje final del cliente al servidor tras configurar la respuesta de la comunicación anterior con el servidor.

Parámetros:

  • responder_documento (BSON::Documento)

    El documento de respuesta del mensaje anterior.

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

    La conexión se está autenticando.

Devuelve:

Desde:

  • 2.0.0



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Archivo 'lib/mongo/auth/aws/conversation.rb', línea 40

def continuar(responder_documento, conexión)
  @id_de_conversación = responder_documento[:ID de conversación]
  carga útil = responder_documento[:carga útil].datos
  carga útil = BSON::Documento.de_bson(BSON::Búfer de bytes.Nuevo(carga útil))
  @server_nonce = carga útil[:s].datos
  validate_server_nonce!
  @sts_host = carga útil[:h]
  a no ser que (1..255).¿incluir?(@sts_host.bytesize)
    propagar Error::Configuración de autenticación del servidor no válida, "Lalongitud del nombre 1 255 dehost de STS no estáen el rango de.. bytes: #{ @sts_host }"
  end

  selector = MENSAJE DE CONTINUACIÓN DEL CLIENTE.unir(
    carga útil: BSON::Binario.Nuevo(carga útil final del cliente),
    ID de conversación: id de conversación,
  )
  mensaje de construcción(conexión, usuario.fuente de autenticación, selector)
end