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

수정일 수, 7 5월 시간: 10:07 AM

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


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

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


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


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

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

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

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


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

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

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


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() 함수를 호출합니다.


  • : helvetica Neue;;">문의 양식은 고객의 세부 정보(이름 및 이메일 주소)로 미리 채워져 있습니다.
  • 로그인한 고객은 액세스 권한이 있는 문서만 열람 및 검색할 수 있습니다.
  • 도움말 위젯은 고객이 선호하는 언어로 문의 양식 및 솔루션 문서를 로드합니다. 고객은 로그인하여 프로필 편집으로 이동하여 Freshdesk 포털에서 선호하는 언어를 설정할 수 있습니다  언어로 이동합니다. 로캘 매개변수로 이를 재정의할 수 있습니다.
  • 상담원 포털에서 도움말 위젯에서 어떤 고객이 문서를 도움이 됨/도움이 되지 않음으로 표시했는지 확인할 수 있습니다.


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

FreshworksWidget('로그아웃')

로그아웃 버튼 클릭 시 사용되는 로그아웃 API의 예시입니다:

function logoutWidget() {
FreshworksWidget('로그아웃')
}
<a href="#" onclick="logoutWidget()">로그아웃</a>


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

  • 공유 비밀 키는 관리 > 계정 > 보안 > 위젯 설정>에서 재설정할 수 있습니다.
  • 공유 비밀 키를 재설정하면 모든 세션이 무효화되며 위젯에 로그인한 모든 고객은 로그아웃됩니다.

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

아티클이 유용했나요?

훌륭합니다!

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

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

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

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

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

피드백 전송

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