휴대용 가상 에이전트 채팅 위젯 구성

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 소요 시간: 6분
  • 휴대용 가상 에이전트 채팅 위젯이 외부 공급업체 웹 페이지에서 실행 가상 에이전트 되도록 구성합니다.

    시작하기 전에

    주:
    Vancouver에서 온보딩하는 신규 고객의 경우, 채팅 위젯은 기본적으로 인증된 사용자만 액세스할 수 있습니다. 미인증 사용자가 채팅 위젯에 액세스할 수 있도록 허용하려면 공개 액세스를 위해 sn_va_web_client_app_embed 페이지를 활성화해야 합니다. 자세한 내용은 Make UI pages public or private 문서를 참조하십시오.

    필요한 역할: admin

    이 태스크 정보

    ServiceNow 최상위 도메인 및 도메인 이름이 채팅 위젯을 로드하는 사이트와 일치하는 경우에만 Portable 가상 에이전트 을 지원합니다. SSO는 service-now.com URL을 통해서만 지원됩니다. 그 이상인 경우 사용자 지정 솔루션과 구현이 필요합니다.

    프로시저

    1. 모두로 이동한 다음 필터에 sys_properties.list를 입력합니다.
    2. 시스템 속성 [sys_properties] 테이블에서 이름으로 속성을 검색 com.glide.cs.embed.csp_frame_ancestors 합니다.
    3. 속성 이름을 클릭하여 양식을 열고 지시문 값을 지정합니다.
      필드 설명
      유형 문자열

      이는 기본값입니다.

      HTTP 헤더 지시문의 소스 값: Content-Security-Policy:frame-ancestors<source>이 속성은 Internet Explorer를 제외한 대부분의 주요 브라우저에 적용됩니다.
      다음을 포함하여 하나 이상의 소스를 지정합니다.
      • 'self': 원본이 제공되는 페이지와 동일함을 나타냅니다. 예를 들어 값이 이()이면 'self' http://mywebsite.comiframe은 mywebsite.com 뿐만 아니라 상위 도메인 내에 포함됩니다. 이는 기본값입니다.
      • host-source: 외부 웹 페이지를 포함할 수 있는 도메인입니다. 이름, IP 주소 또는 선택적 URL 및/또는 포트 번호로 인터넷 호스트 사이트를 지정합니다. 사이트 주소는 와일드카드(별표) 문자로 시작할 수 있습니다. 예제 값: http://*.example.com
      • scheme-source: 스키마입니다. 예: http: 또는 https:
      • none: 일치하는 URL이 없습니다.
    4. 시스템 속성 [sys_properties] 테이블로 돌아가 이름으로 속성을 검색 com.glide.cs.embed.xframe_options 합니다.
    5. 속성 이름을 클릭하여 양식을 열고 지시문 값을 지정합니다.
      필드 설명
      유형 문자열

      이는 기본값입니다.

      브라우저가 프레임에서 외부 웹 페이지를 렌더링할 수 있는지 여부를 나타내는 X-Frame-Options 헤더 지시문의 값입니다.
      다음 값 중 하나를 지정합니다.
      • sameorigin: 페이지 자체와 원점이 동일한 프레임에 페이지를 표시합니다. 이는 기본값입니다. 이 속성은 Internet Explorer 11과 같은 이전 브라우저에 적용됩니다. 예제 값: https://example.com 에서 허용
      • 거부: 프레임에 페이지를 표시하지 않습니다.
      • allow-from uri: 지정된 원본의 프레임에만 페이지를 표시합니다.
        주:
        이 값은 최신 브라우저에서 더 이상 작동하지 않습니다.
    6. REST API에 대한 CORS 규칙을 구성하여 여러 도메인에 액세스 권한을 부여합니다.
      이 규칙은 보안 제한 없이 웹 페이지의 채팅 위젯에 액세스할 수 있는 API를 호출할 수 있는 권한을 지정한 웹 도메인에 부여합니다. 모든 도메인은 공통 상위 도메인을 공유해야 합니다. 또한 지원하려는 각 하위 도메인에 대해 새 CORS 규칙을 만들어야 합니다.
      1. 다음으로 이동 모두 > 시스템 웹 서비스 > REST > CORS 규칙.
      2. 새로 만들기를 클릭합니다.
      3. 양식의 필드에 내용을 입력합니다.
        필드 설명
        이름 규칙의 고유한 이름입니다.
        애플리케이션 애플리케이션의 범위입니다. 전역 이 기본값입니다.
        REST API REST API의 이름입니다. 대화 소비자 계정 [now/cs]을 선택합니다.
        도메인 웹 사이트의 도메인입니다. 예: https://mycompany.com

        웹 사이트에 대한 하위 도메인이 여러 개 있는 경우 각각에 대한 CORS 규칙을 생성해야 합니다. 예를 들어 support.mycompany.comproducts.mycompany.com 에는 두 개의 개별 CORS 규칙이 필요합니다.

        주:
        와일드카드는 허용되지 않습니다.
        최대 나이 클라이언트 세션을 캐시하는 시간(초)입니다. 초기 CORS 요청 후 지정된 시간 내에 동일한 클라이언트의 추가 요청에는 실행 전 메시지가 필요하지 않습니다.

        값을 지정하지 않으면 기본값은 0 으로, 모든 요청에 실행 전 메시지가 필요함을 나타냅니다.

      4. HTTP 메서드 탭에서 GET를 선택합니다.
        휴대용 채팅 위젯은 요청만 수신합니다.
      5. 제출을 클릭합니다.
      6. 옵션: 웹 사이트의 다른 하위 도메인에 휴대용 채팅 위젯을 추가하려면 이 단계를 반복합니다.
    7. 옵션: 메서드(Web API)를 사용하여 window.postMessage() 사용자 인터페이스 페이지에서 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(<your-page>);
            
            // 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/"https://<your-instance>service-now.com/sn_va_web_client_login.do?sysparm_redirect_uri=’ + encodeURIComponent(<your-page>);
          });
        </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>)에서 지정한 포함된 채팅 위젯 페이지로 리디렉션됩니다.

    다음에 수행할 작업

    외부 공급업체 웹 사이트에 휴대용 가상 에이전트 채팅 위젯 추가.