도움말 위젯에 사용자 인증하기

수정일 일요일, 9 3월 시간: 2:28 PM

Freshdesk 도움말 위젯을 사용하면 웹사이트나 제품 내에 솔루션 문서와 문의 양식을 임베드할 수 있습니다.고객이 도움이 필요할 때 위젯을 열어 솔루션 문서를 검색하거나 티켓을 제출할 수 있습니다. 도움말 위젯을 만드는 방법에 대한 자세한 내용은 도움말 위젯 설정하기를 참조하세요.


프레시데스크를 사용하면 지식창고의 특정 폴더, 포털에 로그인한 사용자 또는 특정 회사의 연락처에 대한 공개 범위를 제한할 수 있습니다. 이를 통해 다음을 수행할 수 있습니다.

  • 민감 정보가 포함된 솔루션 문서가 공개적으로 표시되지 않도록 설정
  • 기업에 대한 정보가 포함된 솔루션 기사를 해당 기업의 연락처에만 표시
  • 프리미엄 고객만 특정 솔루션 문서에 액세스할 수 있도록 허용


도움말 위젯을 만들 때 해당 위젯과 연동할 솔루션 문서 카테고리를 선택할 수 있습니다. 이러한 카테고리에 표시가 제한된 폴더가 있는 경우에는 사용자가 위젯에서 인증을 받아야 해당 솔루션 문서를 볼 수 있습니다.


1. 특정 연락처에 대한 폴더 표시 제한하기:

이 설정은 폴더의 속성을 편집하여 모든 폴더(및 그 안의 솔루션 문서)에 적용할 수 있습니다. 폴더(및 해당 솔루션 문서)가 표시되도록 선택할 수 있는 대상은 다음과 같습니다.

  • 모든 사용자
  • 로그인한 사용자
  • Agents
  • 기업

폴더의 속성을 편집하려면 솔루션 화면으로 이동하여 폴더를 선택한 후 폴더 편집 아이콘을 클릭하세요.


2. 도움말 위젯 설정하기:

  • 도움말 위젯이 없는 경우에는 [email protected]로 문의할 수 있습니다. 도움말 위젯을 만드는 방법에 대한 자세한 내용은 도움말 위젯 설정하기를 참조하세요.
  •  위젯 설정 중에 솔루션 문서를 표시하도록 선택할 수 있습니다.

  • 활성화하면 표시할 솔루션 문서 카테고리를 선택할 수 있습니다.


3. 공유 비밀 키로 사용자 인증하기:

  • 위젯에 고객을 인증하려면 먼저 공유 비밀 키가 필요합니다. 공유 비밀 키는 Freshdesk 계정의 관리 > 계정 > 보안 > 위젯 설정에서 찾을 수 있습니다. 다음은 예시입니다.



주: Freshdesk Omni를 사용하는 경우 관리 > 데이터 및 보안 > 티켓 보안으로 이동하세요.



JWT 토큰 생성의 세부 사항에 대해 자세히 알아보려면 API 설명서를 읽어보세요.


JWT 토큰을 생성하는 샘플 코드:

: Helvetica Neue;">

require 'jwt'
payload = {
name: authenticatedCustomerName,
email: authenticatedCustomerEmail,
exp: (Time.now + 2.hours).to_i
}
token = JWT.페이로드 인코딩, widgetSharedSecretKey


var jwt = require('jwt-simple');
var payload = {
name: authenticatedCustomerName,
email: authenticatedCustomerEmail,
exp: Date.now() + 7200
};
var token = jwt.encode(payload, widgetSharedSecretKey);


import jwt
from datetime import datetime, timedelta
payload = {
"name": authenticatedCustomerName,
"email": authenticatedCustomerEmail,
"exp": int((datetime.now() + timedelta(hours=2)).timestamp())
}
token = jwt.encode(payload, widgetSharedSecretKey, algorithm='HS256')

  • 서버 측에서 JWT 토큰을 생성한 후에는 위젯의 JavaScript 인증 API에 파라미터로 전달해야 합니다. 이렇게 하면 위젯에 대한 고객의 권한이 부여되어 고객이 제한된 솔루션 문서나 문의 양식을 볼 수 있습니다(로그인한 사용자로만 제한된 경우).
  • 단, 이 권한은 설정한 시간에 따라 만료됩니다. 고객에게 원활한 경험을 제공하려면 콜백 함수를 전달하여 토큰 갱신을 자동화하세요. 콜백 함수는 토큰 만료 전에 자동으로 호출됩니다. 귀사의 콜백 함수는 다음과 같아야 합니다.
    • 페이로드에 고객의 이름과 이메일을 사용하여 JWT 토큰을 재생성하고 만료 시간도 지정합니다. 계정의 공유 비밀 키로 서명해야 합니다.
    • 재생성된 토큰으로 인증 API를 호출합니다
{
freshworks_widget_auth_token: "eyJh.GUuY29tIiwibmF.RIjow"
}


다음은 인증 API를 구현한 샘플입니다:

FreshworksWidget('authenticate', {
token: 'YOUR_JWT_TOKEN_HERE',
callback: authenticateCallback
});

authenticateCallback = function() {
fetch('https://your-server.tld/your-auth-url').then(
function(data) {
FreshworksWidget('authenticate', {
token: data.freshworks_widget_auth_token
});
})
}


이 예에서, 인증 API는 JWT 토큰이 만료될 때마다 authenticateCallback() 함수를 호출합니다.



고객이 웹사이트에서 로그아웃할 때는 위젯에서 로그아웃해야 합니다. 로그아웃 API를 사용하면 다음과 같이 할 수 있습니다.


7.공유 비밀 키 재설정하기

재설정 후 새 공유 비밀 키를 사용하여 서버 측에서 JWT 토큰을 생성해야 합니다.

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.