Clase: Mongo::Auth::ConversationBase Privada
- Hereda:
-
Objeto
- Objeto
- Mongo::Auth::ConversationBase
- Definido en:
- lib/mongo/auth/conversation_base.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 común en torno a las conversaciones de autenticación entre el cliente y el servidor.
Subclases conocidas directas
Mongo::Auth::CR::Conversación, LDAP::Conversación, SaslConversationBase, 509X::Conversación
Colapso delresumen de atributos de instancia
-
#conexión ⇒ Mongo::Conexión
solo lectura
privada
La conexión para autenticarse.
-
#usuario ⇒ Auth::Usuario
solo lectura
privada
Usuario El usuario de la conversación.
Colapso del resumen del método de instancia
-
#build_message(conexión, fuente_de_autorización, selector) ⇒ Protocolo::Mensaje
privada
El mensaje a enviar.
-
#inicializar(usuario, conexión, **opciones) ⇒ ConversationBase
constructor
privada
Crea la nueva conversación.
-
#documento_de_autenticación_especulativa ⇒ Hash | nulo
privada
Devuelve el hash que se proporcionará al servidor en el protocolo de enlace como valor de la clave speculativeAuthenticate.
- #validate_external_auth_source ⇒ Object privada
Detalles del constructor
#inicializar(usuario, conexión, **opciones) ⇒ ConversationBase
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
Crea la nueva conversación.
32 33 34 35 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 32 def inicializar(usuario, conexión, **opta) @usuario = usuario @conexión = conexión end |
Detalles de los atributos de instancia
#conexión ⇒ Mongo::Connection (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 la conexión para autenticarse.
41 42 43 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 41 def conexión @conexión end |
#usuario ⇒ Auth::User (sólo 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 usuario El usuario de la conversación.
38 39 40 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 38 def usuario @usuario end |
Detalles del método de instancia
#build_message(connection, auth_source, selector) ⇒ 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.
Devuelve el mensaje a enviar.
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 55 def (conexión, fuente de autenticación, selector) Si conexión && conexión.características.¿op_msg_habilitado? selector = selector.dup selector[Protocolo::Msg::DATABASE_IDENTIFIER] = fuente de autenticación cluster_time = conexión.mongos? && conexión.cluster_time Si cluster_time selector[Operación::CLUSTER_TIME] = cluster_time end Protocolo::Msg.Nuevo([], {}, selector) else Protocolo::Query.Nuevo( fuente de autenticación, Database::DOMINIO, selector, limit: -1, ) end end |
#speculative_auth_document ⇒ Hash | nil
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 hash que se proporcionará al servidor en el protocolo de enlace como valor de la clave speculativeAuthenticate.
Si el mecanismo de autenticación no es compatible con la autenticación especulativa, este método retorna nil.
50 51 52 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 50 def documento de autorización especulativa nulo end |
#validate_external_auth_source ⇒ Object
Este método forma parte de una API privada. Debe evitarlo si es posible, ya que podría eliminarse o modificarse en el futuro.
74 75 76 77 78 79 80 81 82 83 84 |
# Archivo 'lib/mongo/auth/conversation_base.rb', línea 74 def validate_external_auth_source Si usuario.fuente de autenticación != ' $externo ' user_name_msg = Si usuario.Nombre " #{nombre deusuario}" else '' end mecanismo = usuario.mecanismo propagar Auth::Configuración no válida, "Usuario#{user_name_msg} especifica origen de autenticación '#{user.auth_source}', pero la única fuente de autenticación válida para #{mechanism} es '$external'" end end |