다른 소프트웨어 제공자와 통합 CSD 2.0

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 10분
  • Casper, Altiris 또는 LANDesk와 같은 클라이언트 소프트웨어 배포 제공자와 통합 CSD 2.0 합니다.

    주:
    확장 CSD 2.0 은 숙련된 ServiceNow AI Platform 개발자만 사용할 수 있는 고급 절차입니다.

    제공자 테이블 생성

    제공자 서버에서 검색된 데이터를 저장할 테이블을 식별하고 생성합니다.

    예를 들어 애플리케이션, 컬렉션 및 배포 테이블은 스포크와 함께 Microsoft Endpoint Configuration Manager 제공됩니다. 마찬가지로 검색된 데이터를 저장할 테이블을 만듭니다. 클라이언트 소프트웨어 배포 애플리케이션(sn_csd_application) 테이블을 확장하는 애플리케이션 테이블을 만들어야 합니다.
    • 구성 항목 [cmdb_ci] 테이블을 확장하는 제공자 서버 테이블을 만듭니다.
    • 클라이언트 소프트웨어 배포 소프트웨어 구성[sn_csd_software_config] 테이블을 확장하는 소프트웨어 구성 테이블을 만듭니다.

    하위 플로우 생성

    에서 하위 플로우 워크플로우 스튜디오 를 생성하여 데이터를 검색 및 저장하고 애플리케이션을 배포합니다.

    요구 사항에 따라 이러한 하위 플로우 워크플로우 스튜디오 를 생성합니다.
    • 검색 및 저장 데이터 하위 플로우:

      제공자 서버를 검색하고, 제공자 서버에서 데이터를 검색하고, 인스턴스에 해당 데이터를 저장하는 하위 플로우입니다.ServiceNow 이 데이터는 서버 데이터를 저장하기 위해 이전에 생성한 테이블에 저장되어야 합니다.

    • 애플리케이션 배포 하위 플로우:

      제공자 서버에서 소프트웨어를 배포하는 하위 플로우입니다. 이 하위 플로우는 서비스 카탈로그에서 요청된 애플리케이션 배포와 관련된 정보를 제공자에게 제공합니다.

    • 애플리케이션 취소 하위 플로우:

      제공자 서버에서 설치를 취소하는 하위 플로우입니다. 이 하위 플로우는 애플리케이션을 제거해야 하는 사용자 또는 장치에 대한 정보를 제공자에게 제공합니다.

    • 구성 데이터 조회 하위 플로우:

      지정된 요청 항목 또는 소프트웨어 구성 기록에 대한 구성 데이터를 검색하는 하위 플로우입니다.

    애플리케이션 템플릿 배포, 구성 데이터 템플릿 조회 및 애플리케이션 템플릿 취소 하위 플로우가 제공됩니다 CSD 2.0. 이러한 하위 플로우를 참조로 사용하고 요구 사항에 따라 하위 플로우를 생성할 수 있습니다.

    제공자 기록 생성

    제공자 기록을 생성하여 플로우를 구성합니다.

    시작하기 전에

    필요한 역할: 관리자

    프로시저

    1. 다음으로 이동 클라이언트 소프트웨어 배포 2.0 > 제공자.
    2. 새로 만들기를 클릭합니다.
    3. 양식에서 다음 값을 입력합니다.
      필드 설명
      이름 제공자 기록을 식별하는 이름입니다.
      소프트웨어 구성 테이블 생성한 소프트웨어 구성 테이블입니다. 이 테이블은 클라이언트 소프트웨어 배포 소프트웨어 구성[sn_csd_software_config] 테이블을 확장합니다.
      제공자 서버 테이블 생성한 제공자 서버 테이블입니다. 이 테이블은 구성 항목 [cmdb_ci] 테이블을 확장합니다.
      디스커버리 플로우 제공자 서버를 검색하고, 제공자 서버에서 데이터를 검색하고, 해당 데이터를 인스턴스에 저장하기 위해 생성한 하위 플로우입니다.ServiceNow
      배포 플로우 제공자 서버에서 소프트웨어를 배포하기 위해 생성한 하위 플로우입니다.
      해지 플로우 제공자 서버에서 설치를 취소하기 위해 생성한 하위 플로우입니다.
      구성 플로우 지정된 요청 항목 또는 소프트웨어 구성 기록에 대한 구성 데이터를 검색하기 위해 생성한 하위 플로우입니다.
      소스 목록 쉼표로 구분된 검색 소스 목록입니다.
      그림 1. 제공자 기록 예시
      샘플 제공자 기록입니다.
    4. 저장을 클릭합니다.

    UI 작업 생성

    데이터를 검색하고, 소프트웨어 모델을 만들고, 소프트웨어 구성을 만들고, 카탈로그 항목을 만드는 UI 작업을 만듭니다.

    시작하기 전에

    필요한 역할: 관리자

    이 태스크 정보

    UI 작업 생성에 대한 자세한 내용은 UI 작업을 참조하십시오.

    프로시저

    1. 데이터를 검색하는 UI 작업을 만듭니다.
      1. 다음으로 이동 시스템 정의 > UI 작업.
      2. 새로 만들기를 클릭합니다.
      3. 양식에서 다음 값을 입력합니다.
        필드 설명
        이름 UI 작업 기록을 식별하는 이름입니다. 예: 지금 검색.
        테이블 생성한 제공자 서버 테이블입니다. 이 테이블은 구성 항목 [cmdb_ci] 테이블을 확장합니다.
        스크립트 UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 다음과 같이 입력합니다.
        sn_csd.CSDUtil.startDiscovery(current);
      4. 요구 사항에 따라 다른 필드를 지정합니다.
      5. 저장을 클릭합니다.
    2. 소프트웨어 모델을 생성하고 제공자 애플리케이션 또는 소프트웨어에 연결하는 UI 작업을 만듭니다.
      1. 다음으로 이동 시스템 정의 > UI 작업.
      2. 새로 만들기를 클릭합니다.
      3. 양식에서 다음 값을 입력합니다.
        필드 설명
        이름 UI 작업 기록을 식별하는 이름입니다. 예를 들어, 소프트웨어 모델을 만듭니다.
        테이블 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 소프트웨어 배포 애플리케이션(sn_csd_application) 테이블을 확장합니다.
        주:
        SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. 소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 여부를 결정하는 방법에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin
        조건 UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어 소프트웨어 모델이 애플리케이션 또는 소프트웨어와 연결된 경우 이 UI 작업을 숨길 수 있습니다. 따라서 (gs.getProperty("sn_csd.useSAMPlugin") == 'true' &; current.model=="" &; (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) || (gs.getProperty("sn_csd.useSAMPlugin") == 'false'&; current.csd_model=="").
        스크립트 UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 다음과 같이 입력합니다.
        var newModel = '';
        var tableName = '';
        if (gs.getProperty("sn_csd.useSAMPlugin") == 'true' && current.model == "" && (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) {
            tableName = 'cmdb_software_product_model';
        
        } else {
            tableName = 'sn_csd_software_product_model';
        }
        newModel = new sn_csd.CSDModelUtil().generateModel(current, tableName);
        
        if (newModel != '')
            gs.setRedirect(tableName + ".do?sys_id=" + newModel);
      4. 요구 사항에 따라 다른 필드를 지정합니다.
      5. 저장을 클릭합니다.
    3. 소프트웨어 구성을 만드는 UI 작업을 만듭니다.
      1. 다음으로 이동 시스템 정의 > UI 작업.
      2. 새로 만들기를 클릭합니다.
      3. 양식에서 다음 값을 입력합니다.
        필드 설명
        이름 UI 작업 기록을 식별하는 이름입니다. 예를 들어, 소프트웨어 구성 생성입니다.
        테이블 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 소프트웨어 배포 애플리케이션(sn_csd_application) 테이블을 확장합니다.
        주:
        SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. 소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 여부를 결정하는 방법에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin
        조건 UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어, 소프트웨어 모델이 구성된 경우에만 UI 작업을 표시할 수 있습니다. 따라서 (gs.getProperty("sn_csd.useSAMPlugin") == 'true' &; current.model!="" &; (GlidePluginManager().isActive("com.snc.sams") || GlidePluginManager().isActive("com.snc.samp.core"))) || (gs.getProperty("sn_csd.useSAMPlugin") == 'false' &; current.csd_model!="").
        스크립트 UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 다음과 같이 입력합니다.
        var softwareConfig = createConfig(current);
        action.setRedirectURL(softwareConfig);
        
        function createConfig(appGr) {
            var gr = new GlideRecord("<Provider-software-configuration-table>");
            gr.initialize();
            gr.application = appGr.sys_id;
            gr.name = appGr.display_name;
            gr.insert();
            return gr;
        }

        이 예에서는 <Provider-software-configuration-table> 을 생성한 제공자 서버 테이블로 바꿉니다. 이 테이블은 구성 항목 [cmdb_ci] 테이블을 확장합니다.

      4. 요구 사항에 따라 다른 필드를 지정합니다.
      5. 저장을 클릭합니다.
    4. 카탈로그 항목을 만드는 UI 작업을 만듭니다.
      1. 다음으로 이동 시스템 정의 > UI 작업.
      2. 새로 만들기를 클릭합니다.
      3. 양식에서 다음 값을 입력합니다.
        필드 설명
        이름 UI 작업 기록을 식별하는 이름입니다. 예를 들어 카탈로그 항목 생성입니다.
        테이블 생성한 애플리케이션 테이블입니다. 이 테이블은 클라이언트 소프트웨어 배포 애플리케이션(sn_csd_application) 테이블을 확장합니다.
        주:
        SAM 또는 CSD 2.0 소프트웨어 모델 및 라이센스 테이블을 사용할 수 있습니다. 소프트웨어 모델 및 라이선싱 정보 시스템 속성을 관리하기 위해 SAM 플러그인(SAM Foundation 또는 SAM Professional) 테이블을 사용할지 여부를 결정하는 방법에 따라 해당 소프트웨어 모델 테이블을 사용합니다.sn_csd.useSAMPlugin
        조건 UI 작업이 나타나는 시기를 제한하는 조건을 정의합니다. 예를 들어, 소프트웨어 모델이 구성되어 있고 하나 이상의 소프트웨어 구성이 있는 경우에만 이 UI 작업을 표시할 수 있습니다. 따라서 sn_csd를 입력합니다 . CSDUtil.isCSDSoftwareModelAndConfigurationSet(current, "<provider software configuration table>", "<provider application table을 참조하는 소프트웨어 구성 테이블 열의 내부 이름>").
        스크립트 UI 작업이 실행될 때 실행할 스크립트입니다. 예를 들어 다음과 같이 입력합니다.
        var catItemHandler = new sn_csd.CSDCatItemHandler(current);
        var catItem = catItemHandler.createCatalogItem(current);
        
        
        
        //first parameter - provider's software configuration table
        //second paramter - internal name of software configuration table's column that refers to the provider's application table
        var sfConfig = catItemHandler.getSoftwareConfig('<provider software configuration table>', '<internal name of software configuration table's column that refers to provider's application table>);
        var gr = new GlideRecord('sn_csd_cat_item_fulfilment_config');
        gr.initialize();
        gr.cat_item = catItem.sys_id;
        gr.provider = '<provider's Sys ID from sn_csd_provider table record>'; //provider's Sys ID from sn_csd_provider table record
        gr.software_config = sfConfig; //populating software configuration
        gr.insert();
        action.setRedirectURL(catItem);
      4. 요구 사항에 따라 다른 필드를 지정합니다.
      5. 저장을 클릭합니다.