---
sourceDocument: Xanadu 애플리케이션과의 통합 생성
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/xanadu/integrate-applications

 Release :

    - xanadu

ft:locale :

    - ko-KR

ft:publication_title :

    - Xanadu 애플리케이션과의 통합 생성

ft:clusterId :

    - crint

bundleId :

    - crint

workflow :

    - Creator


---

# MID 서버 PowerShell 파일

# MID 서버 PowerShell 파일 {#ariaid-title1}

* 릴리스 버전: Xanadu
* 
* 업데이트 날짜 2024년 08월 01일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 5분

PowerShell 함수는 PowerShell 스크립트 모듈(\*.psm1) 파일 이름 확장명을 사용하는 스크립트 파일(\*.ps1)에 저장됩니다.
PowerShell 기능은 다음 활동 팩에 포함된 PowerShell MID 서버 스크립트 파일에서 사용됩니다.

* Active Directory
* Exchange
* SCCM
* PowerShell
{#mid-server-powershell-files__ul_gd5_554_cw}

## PSScript.ps1

이 스크립트는 자격 증명 테스트, 암호 암호화 및 오케스트레이션 활동 디자이너 또는 MID 스크립트 파일에 구성된 스크립트 실행과 같은 몇 가지 작업을 수행합니다. 그러나 이 문서에서는 PSScript.ps1에서 원격 호스트에 대한 액세스를 테스트하기 위해 credential.psm1 모듈을 사용하는 방법을 중점적으로 설명합니다.  
PowerShell 변수는 일반적으로 [PowerShell 실행 명령](https://servicenow-prod.fluidtopics.net/rDFI_n8_VB2XOvQRurs~hQ#t_MapPowershellVariablesToExecCmd "사용자가 만든 입력 변수를 사용하여 오케스트레이션이 Windows 대상 컴퓨터에서 실행하는 명령을 구성합니다.") 에서 직접 사용되거나 지정한 MID 서버 스크립트 파일에서 인수로 사용됩니다. PSScript.ps1에 전달되는 특수 변수(예 credType: )가 있습니다. 그림 1. 실행 매개변수에 credType 사용

## PowerShell credType

PowerShell 자격 증명 유형은 다음과 같습니다.  
{#mid-server-powershell-files__table_pm5_b1p_cw__entry__2}

| 유형 | 설명 |
|-|-|
| WMI | 테스트 자격 증명 WMI |
| Exchange | testCredentilExchange |
| AD | testCredentilAD |
| SCCM | testCredentilSCCM |
[ ]

{#mid-server-powershell-files__table_pm5_b1p_cw}

PSScrip.ps1 스크립트에 자격 증명 유형이 전달되지 않은 경우 MID 서버는 기본적으로 WMI 테스트 기능을 사용하여 대상 호스트에 대한 액세스를 테스트합니다. 사용된 자격 증명 유형이 있는 경우 MID 서버는 해당 자격 증명 유형에 해당하는 테스트 기능을 실행합니다.

## 종료 코드

이러한 종료 코드는 PSScript.ps1 스크립트에서 반환되고 MID 서버 로그 파일에 기록됩니다.  
{#mid-server-powershell-files__table_r4l_n5q_dw__entry__2}

| 유형 | 테스트 기능 |
|-|-|
| 0 | PowerShell 명령/스크립트가 성공적으로 실행되었습니다. |
| 1 | 테스트는 성공적으로 완료되었지만 명령/스크립트를 실행하지 못했습니다. |
| 2 | 스크립트에 잘못된 구문이 전달되었습니다. |
| 3 | MID 서버 서비스 계정을 포함한 모든 자격 증명에서 명령/스크립트를 실행하지 못했습니다. |
| 4 | 테스트를 통과하고 활동을 실행했지만 오류가 반환되었습니다. 예제 사용자를 찾을 수 없습니다. |
[표 1. PSScript.ps1 종료 코드]

{#mid-server-powershell-files__table_r4l_n5q_dw}

## DiagnosticsUtil.psm1 {#mid-server-powershell-files__section_rd2_vkl_4bb}

MID 서버는 이 모듈 파일을 사용하여 PowerShell 스크립팅을 사용하여 오케스트레이션 활동 디버깅을 지원하는 PowerShell 로깅을 수행합니다. 디버깅 명령문을 사용자 지정 스크립트에 직접 추가할 수도 있습니다.{#mid-server-powershell-files__table_sd2_vkl_4bb__entry__2}

| 공공 사업 | 설명 |
|-|-|
| SNCLog-DebugInfo | PowerShell 스크립트 또는 PowerShell 오케스트레이션 활동에 대한 디버그 메시지를 기록합니다. 예제: * `SNCLog-DebugInfo -message "내 디버그 메시지... "` * `SNCLog-DebugInfo "내 디버그 메시지"` {#mid-server-powershell-files__ul_qw4_knl_4bb} |
| SNCLog-ParameterInfo | 함수 매개변수 값을 기록합니다. `"function getHostName{ param( [String] $target )"`의 경우 PowerShell 해시 테이블의 첫 번째 값은 실행되는 함수와 각 함수 매개 변수의 값을 나타내는 문자열입니다. 예제: * 단일 매개변수가 있는 함수: `SNCLog-ParameterInfo @("Running getHostName", $target)` 주: 디버그 메시지에 '`Running getHostName $target:[actual value of $target]`'이 표시됩니다. * 여러 매개변수가 있는 함수: `SNCLog-ParameterInfo @("실행 중인 functionName", $param 1, $param 2, $param 3)` {#mid-server-powershell-files__ul_azp_p4l_4bb} |
| SNCObfuscate-값 | 이 유틸리티를 사용하여 보안을 위해 값을 암호화합니다. 함수는 `"$variableName":***`를 표시하며, 여기서 \*\*\*는 난독 처리된 값입니다. 예제: `SNCObfuscate-Value $password` 주: 디버그 메시지는 `"$password : ***"`입니다. |
[표 2. PowerShell 진단 유틸리티]

{#mid-server-powershell-files__table_sd2_vkl_4bb}

## Credentials.psm1

MID 서버는 이 모듈 파일을 사용하여 대상 호스트에 대한 액세스를 테스트합니다. PowerShell 활동에 자격 증명 유형(credType)이 정의되어 있지 않으면 MID 서버는 다음 액세스 유형 함수를 사용하여 자격 증명 테이블에 저장된 모든 Windows 자격 증명을 반복합니다. 작성된 모든 ServiceNow® PowerShell 활동은 특정 자격 증명 유형을 사용하도록 하드 코딩됩니다. 따라서 MID 서버는 지정된 기능에 대해서만 자격 증명 액세스를 테스트합니다.{#mid-server-powershell-files__table_qmm_z1p_cw__entry__2}

| 함수 | 설명 |
|-|-|
| 테스트 자격 증명 WMI | 객체를 사용하는 대상 호스트에서 지정된 사용자와 암호를 테스트합니다 Get-WMI . |
| testCredentilAD | 내장 DirectoryEntry 객체를 사용하여 대상 호스트에서 지정된 사용자 및 암호를 테스트합니다. |
| testCredentialExchange (영문) | 지정된 사용자 및 암호를 테스트하여 Exchange 호스트에 세션을 만듭니다. 이 테스트는 원격 호스트에서 기본 제공 PowerShell 원격 기능을 사용합니다. WinRM은 기본적으로 Exchange 서버에 구성됩니다. |
| testCredentialSCCM | SCCM 서버에 세션을 작성하기 위해 지정된 사용자 및 암호를 테스트합니다. 이 테스트는 원격 호스트에서 기본 제공 PowerShell 원격 기능을 사용합니다. 이 테스트를 수행하려면 WinRM을 구성해야 합니다. |
| testNoCredentialAccessWMI 님 | 객체를 사용하여 대상 호스트에서 지정된 사용자와 암호를 테스트합니다 Get-WMI . 이 테스트는 credType 이 사용되지 않을 때 사용됩니다. |
[표 3. PowerShell 테스트 기능]

{#mid-server-powershell-files__table_qmm_z1p_cw}  
주:  
이러한 함수 중 하나를 사용하여 테스트에 통과하면 해당 자격 증명이 PowerShell 스크립트/명령을 실행하는 데 사용됩니다. 테스트에서 이러한 기능을 사용하여 대상 호스트에 액세스하지 못하면 MID 서버는 MID 서버 서비스의 계정으로 PowerShell 스크립트/명령을 실행합니다.

이 다이어그램은 PowerShell 활동의 대상이 되는 호스트에 대한 자격 증명 선택 동작의 종속성을 보여줍니다. 대상 호스트가 MID 서버의 IP 주소 또는 호스트 이름이면 MID 서버는 자격 증명 테이블의 모든 자격 증명을 무시하고 MID 서버 서비스의 계정을 사용합니다. 대상 호스트가 MID 서버가 아니면 모든 Windows 자격 증명이 먼저 사용됩니다. 자격 증명 테이블의 모든 자격 증명이 PowerShell 활동을 실행하지 못하면 MID 서버는 MID 서버 서비스 계정을 사용합니다.  
그림 2. PowerShell 자격 증명 선택 기준

## ActiveDirectory.psm1

이 모듈 파일은 [Active Directory](https://www.servicenow.com/docs/access?context=c_OrchActiveDirectoryActivities&version=xanadu&pubname=xanadu-servicenow-platform&ft:locale=en-US) 활동 팩과 함께 제공되는 PowerShell 스크립트에서 사용하는 기능을 저장합니다.

## Exchange.psm1

이 모듈 파일은 [Exchange](https://servicenow-prod.fluidtopics.net/xEa3KUxAWJHFjkU7porUyg "Exchange 활동 팩을 사용하면 워크플로에서 Exchange 메일 시스템을 관리할 Microsoft 수 있습니다.") 활동 팩과 함께 제공되는 PowerShell 스크립트에서 사용하는 기능을 저장합니다.

## SCCM.psm1

이 모듈 파일은 [SCCM](https://servicenow-prod.fluidtopics.net/Pjt9MXf5imXviJ7LazgBow "Microsoft System Center Configuration Management(SCCM) 활동 팩은 SCCM 서버에서 소프트웨어 배포 및 컬렉션을 관리하는 데 사용할 수 있는 오케스트레이션 작업을 제공합니다.") 활동 팩과 함께 제공되는 PowerShell 스크립트에서 사용하는 기능을 저장합니다.

