Classe: Mongo::Auth::Scram Private

Herda:
Base
  • Objeto
mostrar tudo
Definido em:
build/ruby-driver-v2.19/lib/mongo/auth/SCRAM.rb,
build/ruby-driver-v2.19/lib/mongo/auth/SCRAM/conversation.rb

Visão geral

Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.

Define o comportamento da autenticação SCRAM.

Desde:

  • 2.0.0

Subclasses conhecidas diretas

Scram256

Definido sob namespace

Classes: Diálogo

Colapsode resumo constante

Mecanismo =

Essa constante faz parte de uma API privada. Você deve evitar usar essa constante, se possível, pois ela pode ser removida ou alterada no futuro.

A string do mecanismo de autenticação.

Desde:

  • 2.0.0

'SCRAM-SHA-1'.congelar

Recolhimento do Resumo do atributo de instância

Atributos herdados da Base

#connection, #user

Recolhimento do Resumo do método de instância

Detalhes do construtor

#inicializar(usuário, conexão, **opts) ➤ SCRAM

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Inicializa o autenticador SCRAM .

Parâmetros:

  • utilizador (Auth::User)

    O usuário a ser autenticado.

  • Conexão (Mongo::Connection)

    A conexão para autenticar.

  • opciona (Hash)

    um conjunto personalizável de opções

Hash de opções (**opts):

  • speculative_auth_client_nonce (string | nil)

    O cliente não usado em autenticação especulativa na conexão especificada que produzia o resultado de autenticação especulativa especificado.

  • speculative_auth_result (BSON::Document | nil)

    O valor do campo speculativeAuthenticate da resposta hello da negociação na conexão especificada.

Desde:

  • 2.0.0



40
41
42
43
44
# File 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', linha 40

def inicializar(utilizador, Conexão, **opciona)
  super
  @speculative_auth_client_nonce = opciona[:speculative_auth_client_nonce]
  @speculative_auth_result = opciona[:speculative_auth_result]
end

Detalhes do atributo da instância

#speculative_auth_client_noncestring | nil (somente leitura)

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna O cliente não usado em autenticação especulativa na conexão atual.

Retorna:

  • (string | nil)

    O cliente não usado em autenticação especulativa na conexão atual.

Desde:

  • 2.0.0



48
49
50
# File 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', linha 48

def speculative_auth_client_nonce
  @speculative_auth_client_nonce
end

#speculative_auth_resultBSON::Document | nil (somente leitura)

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Retorna o valor do campo speculativeAuthenticate da resposta hello da negociação na conexão atual.

Retorna:

  • (BSON::Document | nil)

    O valor do campo speculativeAuthenticate da resposta hello da negociação na conexão atual.

Desde:

  • 2.0.0



52
53
54
# File 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', linha 52

def speculative_auth_result
  @speculative_auth_result
end

Detalhes do método de instância

#conversaObjeto

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Desde:

  • 2.0.0



54
55
56
57
# File 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', linha 54

def conversa
  @conversation ||= auto.classe.const_get(:Conversation).Novo(
    utilizador, Conexão, client_nonce: speculative_auth_client_nonce)
end

#loginBSON::Document

Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.

Faça login do usuário na conexão atual.

Retorna:

  • (BSON::Document)

    O documento da resposta de autenticação.

Desde:

  • 2.0.0



62
63
64
65
66
67
68
69
70
# File 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', linha 62

def 
  conversa_multi_step(Conexão, conversa,
    speculative_auth_result: speculative_auth_result,
  ).toque fazer
    a menos que conversa.server_verified?
      aumentar Erro::Faltando ScramServerSignature
    end
  end
end