OAuth 인증 연동
    • PDF

    OAuth 인증 연동

    • PDF

    기사 요약

    등록된 인증 서버와의 연동을 통해 인증이 완료된 사용자에게만 답변을 응답할 수 있습니다. 최초 1회의 인증이 완료되면, 해당 사용자의 정보가 유지되는 동안에는 추가 인증 절차 없이 답변을 응답합니다.
    인증 서비스를 연동하는 방법은 다음과 같습니다.

    1. 네이버 클라우드 플랫폼의 콘솔에서 Services > CLOVA Chatbot > Domain 메뉴를 차례대로 클릭해 주십시오.
    2. 원하는 도메인의 [빌더 실행하기] 버튼을 클릭하여 챗봇 빌더를 실행해 주십시오.
    3. 챗봇 빌더에서 챗봇 설정 > 서비스 연동 탭을 클릭해 주십시오.
    4. 인증 서비스의 [연동] 버튼을 클릭해 주십시오.
    5. 서비스 연동 창에서 인증 URL을 입력해 주십시오.
      • 사용자가 질문을 입력하면 챗봇은 인증된 사용자인지 판단하기 위해 POST {URL}/confirm을 호출하여 입력된 인증 서버에 인증 여부를 확인
      • {URL}은 도메인 관리자가 입력한 인증 URL
      • 챗봇은 사용자의 ID와 플랫폼 정보를 함께 전달
    {
      "userId": "${userId}",
      "platform": "${platform}",
      "domainCode":"${domainCode}"
    }
    
    필수타입설명
    userIdYString사용자의 아이디
    platformYString메신저 플랫폼
    domainCodeYString현재 도메인의 코드
    • 만약 인증된 사용자인 경우 인증 서버는 다음과 같이 응답을 전달해주어야 합니다.
    {
      "valid": true
    }
    
    필수타입설명
    validYBoolean사용자가 인증된 사용자라면 true가 리턴
    1. 인증 요청 메시지와 인증 실패 메시지, 인증 오류 메시지를 입력하고 [연동] 버튼을 클릭해 주십시오.
    • 만약 인증되지 않은 사용자 또는 인증에 실패한 사용자인 경우, 챗봇은 인증 요청 메시지 또는 인증 실패 메시지와 함께 Login 링크가 담긴 URL 버튼을 사용자에게 응답합니다.
      GET {URL}/login?userId=${userId}&platform=${platform}&domainCode=${domainCode}
      
    • 만약 Login에 성공하면 인증 서버는 Invoke URL을 호출합니다.
      Invoke URL을 호출하는 경우 아래의 데이터가 포함되어 있어야 합니다.
      {
        "domainCode": "String",
        "platform": "String",
        "userId": "String",
        "nonce": "Option[String]",
       "needPush": true
      }
      
    필수타입설명
    platformYString메신저 플랫폼 정보
    userIdYString사용자 구분을 위한 아이디
    nonceYStringlink에 사용하기 위한 임시 암호 값.
    nonce 값이 존재할 경우 link api를 호출할 때 받은 nonce값을 담아 호출
    needPushYBoolean답변을 구한 뒤 push 가 필요할 경우 사용.
    LINE, TalkTalk 메신저만 지원
    • 로그인 성공 요청이 챗봇 빌더에 전달되면 해당 사용자의 인증 성공에 대한 확인으로 link 리퀘스트를 요청합니다.
    POST {URL}/link 
    {
      "userId": "String",
      "platform": "String",
      "domainCode": "String",
      "nonce": "Option[String]"
    }
    
    필수타입설명
    userIdYString사용자 구분을 위한 아이디
    platformYString메신저 플랫폼 정보
    domainCodeYString도메인을 구분하기 위한 도메인 코드
    nonceNString받은 nonce 값이 존재할 경우 api를 호출할 때 받은 값을 담아 호출
    • POST {URL}/link를 호출했을 때 200OK가 전달되면 link에 성공했다고 판단합니다.
    • link에 성공하면 처음 사용자가 진입했을 때 질문했던 내용에 대해 답변을 찾아 응답합니다.
    • link에 실패하면 인증 실패 메시지와 함께 재로그인을 유도합니다.
    • 만약 로그인 성공 요청에서 needPush: true인 경우 push가 가능한 플랫폼이면 구해진 답변을 push 합니다.

    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.