클래스: Mongo::Auth::Aws::Conversation Private

상속:
SaslConversationBase 모두 표시
다음에 정의됨:
build/ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/conversation.rb

개요

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

클라이언트와 서버 간의 단일 MONGODB-AWS 대화와 관련된 동작을 정의합니다.

상수 요약

SaslConversationBase에서 상속된 상수

SaslConversationBase::CLIENT_CONTINUE_MESSAGE, SaslConversationBase::CLIENT_FIRST_MESSAGE

인스턴스 속성 요약

ConversationBase에서 상속된 속성

#connection, #user

인스턴스 메서드 요약 접기

SaslConversationBase에서 상속된 메서드

#start

ConversationBase에서 상속된 메서드

#build_message, #initialize, #speculative_auth_document, #validate_external_auth_source

생성자 세부 정보

이 클래스는 Mongo::Auth::ConversationBase에서 생성자를 상속합니다.

인스턴스 메서드 세부 정보

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

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

Amazon Web Services 대화를 계속합니다. 이전 서버 통신에서 회신을 설정한 후 클라이언트 최종 메시지를 서버 로 보냅니다.

매개변수:

  • Reply_document (BSON::Document)

    이전 메시지의 회신 문서입니다.

  • 연결 (Server::Connection)

    인증 중인 연결입니다.

반환합니다:

이후:

  • 2.0.0



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# 파일 'build/ruby-driver-v2.19/lib/mongo/auth/Amazon Web Services/conversation.rb', 줄 40

def 계속(Reply_document, 연결)
  @conversation_id = Reply_document[:conversationId]
  Payload = Reply_document[:Payload].데이터
  Payload = BSON::문서.from_bson(BSON::ByteBuffer.신규(Payload))
  @server_nonce = Payload[:s].데이터
  validate_server_nonce!
  @sts_host = Payload[:h]
  하지 않는 한 (1..255).포함?(@sts_host.bytesize)
    올리다 오류::InvalidServerAuthConfiguration, "STS 호스트 이름 길이가 1..255 바이트 범위에 없습니다: #{@sts_host}"
  end

  선택기 = CLIENT_CONTINUE_MESSAGE.merge(
    페이로드: BSON::바이너리.신규(client_final_payload),
    대화 ID: 대화 ID,
  )
  build_message(연결, 사용자.auth_source, 선택기)
end