클래스: Mongo::Auth::Scrim 비공개

상속:
Base
  • 객체
모두 표시
다음에 정의됨:
build/ruby-driver-v2.19/lib/mongo/auth/SCRAM.rb,
build/ruby-driver-v2.19/lib/mongo/auth/SCRAM/conversation.rb

개요

이 클래스는 비공개 API의 일부입니다. 이 클래스는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

SCRAM 인증 에 대한 동작을 정의합니다.

이후:

  • 2.0.0

직접 알려진 하위 클래스

ScRAM256

네임스페이스 아래에 정의됨

클래스: 대화

상수 요약 접기

메커니즘 =

이 상수는 비공개 API의 일부입니다. 이 상수는 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

인증 메커니즘 string.

이후:

  • 2.0.0

'SCRAM-SHA-1'.동결

인스턴스 속성 요약 접기

Base에서 상속된 속성

#connection, #user

인스턴스 메서드 요약 접기

생성자 세부 정보

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

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

SCRAM 인증자를 초기화합니다.

매개변수:

  • 사용자 (Auth::User)

    인증할 사용자입니다.

  • 연결 (Mongo::Connection)

    인증할 연결입니다.

  • opts (해시)

    사용자 지정 가능한 옵션 세트

옵션 해시(**opts):

  • speculative_auth_client_nonce (string | nil)

    지정된 추측 인증 결과를 생성한 지정된 연결의 추측 인증에 사용된 클라이언트 논스입니다.

  • speculative_auth_result (BSON::Document | nil)

    지정된 연결에서 핸드셰이크의 hello 응답에 대한 speculativeAuthenticate 필드 의 값입니다.

이후:

  • 2.0.0



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

def 초기화(사용자, 연결, **opts)
  super
  @speculative_auth_client_nonce = opts[:speculative_auth_client_nonce]
  @speculative_auth_result = opts[:speculative_auth_result]
end

인스턴스 속성 세부 정보

#speculative_auth_client_noncestring | nil (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

현재 연결의 추측 인증에 사용된 클라이언트 논스를 반환합니다.

반환합니다:

  • (string | nil)

    현재 연결의 추측 인증에 사용되는 클라이언트 논스입니다.

이후:

  • 2.0.0



48
49
50
# 파일 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', 줄 48

def speculative_auth_client_nonce
  @speculative_auth_client_nonce
end

#speculative_auth_resultBSON::Document | nil (읽기 전용)

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

현재 연결에서 핸드셰이크의 hello 응답의 speculativeAuthenticate 필드 값을 반환합니다.

반환합니다:

  • (BSON::Document | nil)

    현재 연결에서 핸드셰이크의 hello 응답인 speculativeAuthenticate 필드의 값입니다.

이후:

  • 2.0.0



52
53
54
# 파일 'build/ruby-driver-v2.19/lib/mongo/auth/scram.rb', 줄 52

def speculative_auth_result
  @speculative_auth_result
end

인스턴스 메서드 세부 정보

#대화객체

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

이후:

  • 2.0.0



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

def 대화
  @conversation ||= self.클래스.const_get(:Conversation).신규(
    사용자, 연결, client_nonce: speculative_auth_client_nonce)
end

#loginBSON::Document

이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.

현재 연결에서 사용자를 로그인합니다.

반환합니다:

  • (BSON::Document)

    인증 응답의 문서입니다.

이후:

  • 2.0.0



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

def 
  converse_multi_step(연결, 대화,
    speculative_auth_result: speculative_auth_result,
  ). do
    하지 않는 한 대화.server_verified?
      올리다 오류::MissingScrimServerSignature
    end
  end
end