외부 웹 페이지에 채팅 위젯 포함 가상 에이전트 (레거시 방법)

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 9분
  • 인라인 프레임 요소(iframe)를 사용하여 외부 웹 페이지에 채팅 위젯 인터페이스를 로드 가상 에이전트 합니다. 채팅 위젯을 사용하고 로그인하지 않은 게스트 사용자에 대해 1회 사용자 인증(SSO) 인증 프로세스가 자동으로 실행되도록 선택적으로 활성화할 수도 있습니다.

    시작하기 전에

    중요사항:
    대신 웹 페이지에 휴대용 가상 에이전트 웹 클라이언트를 추가하는 것이 좋습니다. 코드 복잡성을 줄이고 구현하기 쉽습니다. 또한 채팅을 시작하거나 닫기 위한 클릭 작업과 같은 표준 채팅 기능도 포함됩니다. 자세한 내용은 외부 공급업체 웹 사이트에 휴대용 가상 에이전트 채팅 위젯 추가 문서를 참조하십시오.
    • iframe에서 포함할 인스턴스의 URL을 지정합니다. 인스턴스에 없는 ServiceNow 페이지에 채팅 위젯을 포함하는 경우 URL은 사용자 지정 인스턴스 URL이어야 합니다. 브라우저 보안이 강화됨에 따라 사용자 지정 URL을 사용하지 않으면 채팅 위젯을 로드하지 못할 수 있습니다. Custom URL 사용에 대한 자세한 내용은 Custom URL을 인스턴스에 연결하기 섹션을 참조하세요.
      주:
      채팅 위젯은 가상 에이전트 기본적으로 Safari의 iframe에서 작동하지 않습니다. Apple (iframe에 사용된 URL의 도메인이 웹 사이트 자체의 도메인과 일치하지 않는 경우) 교차 원본 iframe을 차단합니다.
    • 가상 에이전트 클라이언트를 내장한 후 채팅 위젯에서 선택적으로 SSO 인증을 트리거할 수 있지만 인스턴스가 외부 SSO 제공자를 사용하도록 설정된 경우에만 가능합니다. 또한 호스팅 사이트에서 인스턴스와 동일한 SSO 제공자를 사용해야 합니다. SSO 제공자 설정에 대한 자세한 내용은 외부 1회 사용자 인증(SSO)을 참조하십시오.

      SSO 인증을 트리거하려면 인증 실행 조건을 정의하고 사용자가 지정한 채팅 위젯 페이지로 사용자를 리디렉션하는 JavaScript 스크립트를 만듭니다(아래 2단계 참조). 또한 시스템 속성에서 com.glide.cs.web_client_login_redirect_urls 식별하여 이 스크립트에 전달할 수 있는 허용 URL을 지정합니다. 전체 리디렉션 URL 또는 URL의 호스트 부분( 예: https://example.com )을 지정합니다.

    필요한 역할: 관리자

    이 태스크 정보

    이 절차를 수행하려면 다음 두 시스템 속성에 대한 값을 설정해야 합니다.
    • com.glide.cs.embed.csp_frame_ancestors
    • com.glide.cs.embed.xframe_options
    이러한 속성은 포함된 채팅 위젯의 보안 정책, 즉 웹 채팅 클라이언트를 포함하기 전에 브라우저가 iframe에서 가상 에이전트라이브 에이전트 HTML 콘텐츠를 렌더링하고 채팅을 보호하는 방법을 결정합니다.
    게스트 사용자에 대한 SSO 인증을 생성하려면 window.postMessage() 메서드(웹 API)를 사용하여 인증을 트리거하고 인증 후 사용자가 리디렉션되는 URL을 지정하는 스크립트를 만들 수 있습니다. 이 메서드 및 Window 개체에 대한 자세한 내용은 Window.postMessage()를 참조하십시오.
    주:
    CMS(Content Management System) 애플리케이션을 사용하여 애플리케이션 ServiceNow® 에 대한 ServiceNow AI Platform 사용자 지정 인터페이스를 만드는 경우 이 애플리케이션은 을 지원가상 에이전트하지 않습니다.

    프로시저

    1. iframe 콘텐츠를 보호하기 위한 HTTP 헤더 지시문을 지정하도록 시스템 속성을 모두 com.glide.cs.embed.csp_frame_ancestorscom.glide.cs.embed.xframe_options 설정합니다.
      HTTP 헤더 지시문은 클릭재킹 시도를 완화하기 위해 특정 도메인에 페이지를 포함할 수 있는지 여부를 브라우저에 알려줍니다. 두 속성을 모두 설정하면 주요 브라우저와 Internet Explorer와 같은 이전 브라우저에 대한 보안 지침이 있습니다.
      1. 탐색 필터에 sys_properties.list를 입력합니다.
      2. 시스템 속성 [sys_properties] 테이블에서 이름으로 속성을 검색 com.glide.cs.embed.csp_frame_ancestors 합니다.
        주:
        이 속성은 HTTP 헤더 지시문인 Content-Security-Policy:frame-ancestors<source>의 소스 값을 설정합니다. host-source 값을 사용하여 외부 웹 페이지를 포함할 수 있는 도메인을 지정합니다. 이 속성은 Internet Explorer를 제외한 대부분의 주요 브라우저에 적용됩니다.
      3. 속성 이름을 클릭하여 양식을 열고 지시문 값을 지정합니다.
        표 1. 시스템 속성: com.glide.cs.embed.csp_frame_ancestors
        필드 설명
        유형 문자열

        이는 기본값입니다.

        다음을 포함한 하나 이상의 소스를 지정합니다.
        • 'self': 원본이 제공되는 페이지와 동일함을 나타냅니다. 예를 들어 값이 이()이면 'self' http://mywebsite.comiframe은 mywebsite.com 뿐만 아니라 상위 도메인 내에 포함됩니다. 이는 기본값입니다.
        • host-source: 외부 웹 페이지를 포함할 수 있는 도메인입니다. 이름, IP 주소 또는 선택적 URL 및/또는 포트 번호로 인터넷 호스트 사이트를 지정합니다. 사이트 주소는 와일드카드(별표) 문자로 시작할 수 있습니다. 예제 값: http://*.example.com
        • scheme-source: 스키마입니다. 예: http: 또는 https:
        • none: 일치하는 URL이 없습니다.

        지정할 수 있는 소스 값에 대한 자세한 내용은 의 CSP:frame-ancestors가상 에이전트가 포함된 클라이언트 콘텐츠 보안 정책(인스턴스 보안 강화)Hardening settings을 참조하십시오.

      4. 시스템 속성 [sys_properties] 테이블로 돌아가 이름으로 속성을 검색 com.glide.cs.embed.xframe_options 합니다.
        주:
        이 속성은 브라우저가 프레임에서 외부 웹 페이지를 렌더링할 수 있는지 여부를 나타내기 위해 X-Frame-Options 헤더 지시문의 값을 설정합니다. 기본 sameorigin 값을 사용하여 외부 웹 페이지를 포함할 수 있는 도메인을 지정합니다. 이 속성은 Internet Explorer 11과 같은 이전 브라우저에 적용됩니다.
      5. 속성 이름을 클릭하여 양식을 열고 지시문 값을 지정합니다.
        표 2. 시스템 속성: com.glide.cs.embed.xframe_options
        필드 설명
        유형 문자열. 기본값입니다.
        다음과 같은 값을 지정합니다.
        • sameorigin. 기본값입니다. 페이지 자체와 원점이 같은 프레임에 페이지를 표시합니다. 예제 값: https://example.com 에서 허용
        • 거부합니다. 프레임에 페이지를 표시하지 않습니다.
        • Allow-From URI입니다. 지정된 원점의 프레임에만 페이지를 표시합니다.
          주:
          이 값은 최신 브라우저에서 더 이상 작동하지 않습니다.

        지정할 수 있는 소스 값에 대한 자세한 내용은 X-Frame-OptionsSet Xframe options to prevent embedding third-party websitesHardening settings의 문서를 참조하십시오.

    2. ServiceNow 인스턴스를 사용자 지정 URL에 연결한 후 iframe 요소를 만들고 클라이언트를 외부 웹 페이지에 포함 가상 에이전트 하는 데 사용되는 인라인 요소(iframe)에 사용자 지정 URL을 지정합니다. "https://<your-domain>.com/sn_va_web_client_app_embed.do"
      주:
      인스턴스에 여러 사용자 지정 URL이 있을 수 있지만 인스턴스 URL은 하나만 있을 수 있습니다. 사용자 지정 인스턴스 URL만 사용해야 합니다.
      예:
      <iframe id="sn_va_web_client"     title="ServiceNow Virtual Agent Client"     width="600"     height="900"     src="https://<your-domain>.com/sn_va_web_client_app_embed.do">
      "https://<your-domain>.com/"https://<your-domain>.com/</iframe>
      
      주:
      URL 끝에 있는 ?sysparm_skip_load_history=true 매개변수를 사용하여 대화 이력 없이 인터페이스를 로드합니다.
    3. 옵션: window.postMessage() 메서드(Web API)를 사용하여 사용자 인터페이스 페이지에서 SSO 인증을 트리거하고 사용자가 지정한 채팅 위젯 페이지로 사용자를 반환하는 이벤트 조건을 정의하는 JavaScript 스크립트를 만듭니다.
      사용자를 채팅 위젯 페이지로 리디렉션하려면 다음 문자열을 사용합니다. "https://<your-instance>.service-now.com/sn_va_web_client_login.do?sysparm_redirect_uri=" + encodeURIComponent(<your-page>)
      주:
      스크립트를 실행하기 전에 시스템 속성을 사용하여 com.glide.cs.web_client_login_redirect_urls 스크립트에 전달할 수 있는 URL을 지정합니다. 리디렉션은 속성 값에 허용되는 URL을 하나 이상 지정한 경우에만 작동합니다. 전체 리디렉션 URL 또는 URL의 호스트 부분( 예: https://example.com )을 지정합니다.
      예시 스크립트:
      <script>
          window.addEventListener("message", function(e) {
             // redirect to SSO login if the chat widget logs in but is logged in as a guest user(unauthenticated)
            if(e.data.type==="SESSION_CREATED" && e.data.authenticated === false)
              window.location.href = "https://<your-instance>.service-now.com/sn_va_web_client_login.do?sysparm_redirect_uri="+ encodeURIComponent(location.href);
            
            // redirect to SSO login if the ServiceNow platform logs out from underneath the chat widget
            if(e.data.type==="SESSION_LOGGED_OUT")
              window.location.href = "https://<your-instance>service-now.com/sn_va_web_client_login.do?sysparm_redirect_uri=" + encodeURIComponent(location.href);
          });
        </script>

      이 예에서는 SESSION_CREATED 또는 SESSION_LOGGED_OUT 이벤트가 발생할 때 지정된 인스턴스에서 인증이 트리거됩니다. 인증 후(사용자에 대한 SSO 자격 증명이 수락된 경우) 속성에 com.glide.cs.web_client_login_redirect_urls 페이지 URL도 지정한 경우 사용자는 sn_va-web_client_login.do?sysparm_redirect_uri=' + encodeURIComponent(<your-page>)에서 지정한 포함된 채팅 위젯 페이지로 리디렉션됩니다.