이 문서는 JWT SSO 를 Freshservice에서 Active Directory를 사용한 인증을 위해 설정하는 과정을 설명합니다. IIS 서버에 스크립트를 호스팅하고 Active Directory에 접근하여 Freshservice에서 사용자를 인증할 수 있습니다.
참고: 이 옵션은 2020년 2월부터 Freshworks 제품군에 가입한 경우에만 현재 사용 가능합니다. 이전에 가입한 고객에게는 점진적으로 이 옵션을 제공할 예정입니다.
1단계: 인터넷 정보 서비스(IIS) 설치
인터넷 정보 서비스(IIS 관리자)는 Windows Server에서 Classic ASP 스크립트 파일을 호스팅하도록 구성되어야 하며, 이 파일은 Active Directory에서 사용자 정보를 액세스합니다. Windows Server 2012에 IIS 8을 설치하는 방법은 이 문서를 참조하세요. 서버에 IIS 역할을 설치할 때 다음 옵션을 선택하세요.
웹 서버 (IIS)
보안
Windows 인증
응용 프로그램 개발
ASP
관리 도구
IIS 관리 콘솔
Classic ASP 스크립트를 호스팅하려면 ASP가 필요하고, Freshservice에서 Active Directory의 사용자를 인증하려면 Windows 인증이 필요합니다. 이미 IIS를 설치한 경우 이러한 기능이 설치되어 있는지 확인하세요.
2단계: Classic ASP 스크립트 파일 편집
아래에 첨부된 ADScriptJWT.asp, Constants.asp, jwt.all.asp 파일을 다운로드하세요.
Constants.asp 파일을 열고 변수에 다음 값을 할당하세요.
sLdapReaderUsername = "domain\username" (AD 계정의 사용자 이름으로, AD의 모든 사용자에 대한 읽기 전용 권한이 있는 계정)
sLdapReaderPassword = "password" (해당 사용자 계정의 비밀번호)
sRSAPrivateKey
서명 부분을 생성하려면 인코딩된 헤더, 인코딩된 페이로드, RSA 개인 키를 가져와 서명해야 합니다. 다음 스크립트를 사용하여 RSA 키를 생성할 수 있습니다:
#generate RSA key
ssh-keygen -t rsa -b 1024 -m PEM -f jwtRS256.key
# use empty passphrase
openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub
또는 온라인 생성기를 사용하세요 링크1, 링크2sReturnURL: 인증이 성공하면 사용자가 리디렉션될 Freshservice 리디렉션 URL < https://domain.freshworks.com/sp/OIDC/13415184120 >
Constants.asp 파일을 저장하세요.
예시:
sLdapReaderUsername = "FRESHSERVICE\admin"
sLdapReaderPassword = "xxxxxxxxx"
sRSAPrivateKey = "-----BEGIN RSA PRIVATE KEY-----<RSA Private Key as single line string>----END RSA PRIVATE KEY-----"
sReturnURL = "https://domain.freshworks.com/sp/OIDC/134151841209466902/implicit"
참고: Linux/Mac에서 명령을 실행하면 RSA 공개 및 개인 키가 포함된 두 개의 파일 jwtRS256.key와 jwtRS256.key.pub가 생성됩니다.
.key 파일의 다중 라인 내용을 복사하여 sRSAPrivateKey와 함께 Constants.asp 파일에 붙여넣기 전에 따옴표 안에 단일 라인으로 변경하세요.
3단계: IIS에서 ASP 스크립트 구성
IIS에서 새 웹사이트를 생성하고, 새 웹사이트 생성 섹션을 이 문서에서 참조하세요 (새 사이트를 생성하거나 IIS에서 사용 가능한 기존 사이트를 사용할 수 있습니다).
사이트를 클릭하고 오른쪽 창에서 ASP를 더블 클릭하세요.
Enable Parent Paths를 true로 설정하세요.
사이트를 다시 클릭하고 인증을 더블 클릭하세요.
Windows 인증을 마우스 오른쪽 버튼으로 클릭하고 사용을 선택하세요.
참고: 다른 인증 유형은 모두 비활성화하세요. IIS는 통합 Windows 인증을 사용합니다. 이를 가능하게 하려면 IIS 서버가 사용자가 포함된 Active Directory 도메인에 설치되어야 합니다.사이트를 마우스 오른쪽 버튼으로 클릭하고 탐색을 선택하세요.
이미 구성된 ADScriptJWT.asp, Constants.asp, jwt.all.asp 파일 3개를 붙여넣으세요.
경로 ADScriptJWT.asp로 이동하세요.
인증을 받고 Freshservice에 로그인됩니다.
사전 요구 사항/기억할 점:
Classic ASP 스크립트는 메일 속성을 이메일 홀더로 사용합니다. 메일 속성에서 이메일 주소를 가져옵니다. 따라서 사용자 속성에 메일 속성이 채워져 있어야 Freshservice에 성공적으로 로그인할 수 있습니다. "Freshservice에 로그인할 수 없습니다. 관리자에게 문의하세요"라는 오류가 발생하면 Active Directory에서 이메일 주소가 구성되어 있는지 확인하세요.
기본적으로 runat="server" 옵션은 IIS에서 사이트를 생성할 때 Javascript 태그에 대해 활성화됩니다.
http://dc-svr01/test.asp에서 스크립트에 접근하여 스크립트가 실행되는지 확인하세요. IIS가 이 스크립트를 통합 인증으로 호출하고 익명 인증을 통해 호출하지 않도록 하세요.
인증을 NTLM만 사용하도록 변경하고 Kerberos와 협상하지 않도록 하세요.
4단계: Freshservice에 대한 SSO 설정
Freshservice 계정에 로그인하세요.
관리자 설정 아이콘을 클릭하세요.
계정 설정 아래에서 서비스 데스크 보안을 클릭하세요. 계정에 여러 워크스페이스가 있는 경우, 관리자 > 글로벌 설정 > 계정 설정 > 서비스 데스크 보안으로 이동하세요.
링크를 클릭하세요 - Freshworks 360 보안에서 서비스 데스크 보안 관리. 새 탭에서 조직 보안 페이지가 열립니다.

로그인 방법 아래의 싱글 사인온 카드로 이동하세요.
스위치를 전환하세요. 기본적으로 SAML SSO가 선택됩니다.

드롭다운을 클릭하고 JWT SSO를 선택하세요. 리디렉션 URL 필드 박스에 리디렉션 URL이 자동으로 생성됩니다.
참고: 생성된 리디렉션 URL을 복사하여 sReturnURL 을 Constants.asp 파일에 값을 할당할 때 함께 붙여넣으세요.
jwtRS256.key 의 내용을 복사하여 RSA 공개 키 필드 박스에 붙여넣으세요.
참고: 필드에 붙여넣기 전에 jwtRS256.key의 헤더 및 푸터 내용을 생략하세요.인증 URL을 입력하세요
URL 형식:
https://<AD 서버 도메인 또는 IP>:<포트>/ADScriptJWT.asp
(선택 사항) 사용자가 로그아웃할 때 전송될 로그아웃 URL을 입력할 수도 있습니다.
변경 사항을 저장하려면 저장을 클릭하세요.