New-SCSMSubscription
Service Manager에서 새 구독을 만듭니다.
구문
New-SCSMSubscription
-Class <ManagementPackClass>
[-Condition <Condition>]
[-Description <String>]
[-Criteria <String>]
[-GroupQueue <String[]>]
[-ManagementPack <ManagementPack>]
-DisplayName <String>
-Recipient <EnterpriseManagementObject[]>
-Template <EmailTemplate>
[-PassThru]
[-Enable <Boolean>]
[-SCSession <Connection[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
New-SCSMSubscription cmdlet은 Service Manager에서 구독을 만듭니다.
예제
예제 1: 구독 만들기
PS C:\>$PrinterClass = Get-SCSMClass -Name "Microsoft.AD.Printer"
PS C:\> $Message = 'Printer $Context/Property[''Type=Windows!Microsoft.AD.Printer'']/PrinterName$ has been updated'
PS C:\> $ManagementPack = Get-SCSMManagementPack -Name "ServiceManager.ConfigurationManagement.Configuration"
PS C:\> $Language = [System.Globalization.CultureInfo]"EN"
PS C:\> $Encoding = [System.Text.Encoding]::ASCII
PS C:\> New-SCSMEmailTemplate -Class $PrinterClass -DisplayName "Printer Email Template" -Body $Message -Description "A template for printer notifications" -Encoding $Encoding -Language $Language -ManagementPack $ManagementPack -Subject $Message
PS C:\> $PrinterTemplate = Get-SCSMEmailTemplate -DisplayName "Printer Email Template"
PS C:\> $UserClass = Get-SCSMClass -Name "Microsoft.AD.User"
PS C:\> $Recipient = Get-SCSMClassInstance -Class $UserClass -Filter 'UserName -like "%Administrator"'
PS C:\> New-SCSMSubscription -Class $PrinterClass -DisplayName "Printer update subscription" -Recipient $Recipient -Template $PrinterTemplate -Condition Updated
첫 번째 명령은 Get-SCSMClass cmdlet을 사용하여 Microsoft.AD.Printer라는 클래스를 가져오고 $PrinterClass 변수에 저장합니다.
두 번째 명령은 전자 메일에 대한 메시지를 만들고 $Message 변수에 저장합니다. 이 예제에서는 전자 메일의 제목 및 본문과 동일한 문자열을 사용합니다.
세 번째 명령은 Get-SCSMManagementPack cmdlet을 사용하여 이 템플릿을 저장한 다음 $ManagementPack 변수에 저장하는 관리 팩을 가져옵니다.
네 번째 및 다섯 번째 명령은 언어 및 인코딩 값을 $Language 및 $Encoding 변수에 저장합니다.
여섯 번째 명령은 프린터에 변경이 발생할 때 적용되는 전자 메일 템플릿을 만듭니다. 이 명령은 처음 5개 명령에서 만든 값을 사용합니다.
일곱 번째 명령은 Get-SCSMEmailTemplate cmdlet을 사용하여 프린터 전자 메일 서식 파일이라는 전자 메일 템플릿을 가져오고 $PrinterTemplate 변수에 저장합니다.
여덟 번째 명령은 Get-SCSMClass사용하여 Microsoft.AD.User라는 클래스를 가져오고 $UserClass 변수에 저장합니다.
아홉 번째 명령은 Get-SCSMClassInstance cmdlet을 사용하여 지정된 필터와 일치하는 이름을 가진 $UserClass 클래스의 인스턴스를 가져옵니다. 명령은 해당 인스턴스를 $Recipient 변수에 저장합니다.
최종 명령은 예제의 앞부분에서 만든 전자 메일 템플릿을 사용하는 구독을 만듭니다. 이 구독은 프린터가 업데이트 될 때마다 관리자에게 전자 메일을 보냅니다.
예제 2: 전자 메일 알림 구독 만들기
PS C:\>$Criteria = @'
>> <Criteria>
>> <Expression>
>> <SimpleExpression>
>> <ValueExpression>
>> <Property State="Pre">$Context/Property[Type='Windows!Microsoft.AD.Printer']/Location$</Property>
>> </ValueExpression>
>> <Operator>NotEqual</Operator>
>> <ValueExpression>
>> <Property State="Post">$Context/Property[Type='Windows!Microsoft.AD.Printer']/Location$</Property>
>> </ValueExpression>
>> </SimpleExpression>
>> </Expression>
>> </Criteria>
>> @'
PS C:\> $Recipient = Get-SCSMClassInstance -DisplayName "System.User" -Filter "Name -like 'domain admins'"
PS C:\> $Class = Get-SCSMClass -Displayname "Microsoft.AD.Printer"
PS C:\> $Template = Get-SCSMEmailTemplate -Displayname "StandardEmailTemplate"
PS C:\> New-SCSMSubscription -Class <ManagementPackClass> -DisplayName "A printer subscription" -Recipient $Recipient -Template $Template -Condition Updated -Criteria $Criteria -Description "Changes in the printer location will cause email to be sent"
첫 번째 명령은 구독에 대한 조건을 만들고 $Criteria 변수에 저장합니다.
두 번째 명령은 Get-SCSMClassInstance cmdlet을 사용하여 지정된 필터와 일치하는 이름을 가진 System.User 클래스에 대한 클래스 인스턴스를 가져옵니다. 명령은 해당 인스턴스를 $Recipient 변수에 저장합니다.
세 번째 명령은 Get-SCSMClass사용하여 Microsoft.AD.Printer라는 클래스를 가져오고 $Class 변수에 저장합니다.
네 번째 명령은 Get-SCSMEmailTemplate사용하여 StandardEmailTemplate이라는 이메일 템플릿을 가져오고 $Template 변수에 저장합니다.
최종 명령은 도메인 관리자에게 전자 메일을 보내도록 구성된 이메일 알림 구독을 만듭니다. 구독은 위치가 변경된 Printer 클래스의 변경 내용을 기반으로 합니다.
매개 변수
-Class
구독이 대상으로 하는 클래스의 이름을 지정합니다. 지정된 이름은 지정된 전자 메일 템플릿에서 참조하는 것과 동일한 클래스를 참조해야 합니다.
형식: | Microsoft.EnterpriseManagement.Configuration.ManagementPackClass |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ComputerName
System Center Data Access 서비스가 실행되는 컴퓨터의 이름을 지정합니다. 자격 증명 매개 변수에 지정된 사용자 계정에는 지정된 컴퓨터에 대한 액세스 권한이 있어야 합니다.
형식: | System.String[] |
Position: | Named |
Default value: | Localhost |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Condition
구독이 실행되는 조건을 지정합니다. 유효한 값은 다음과 같습니다.
- 만든
- 업데이트
- 삭제
형식: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.Condition |
허용되는 값: | Created, Updated |
Position: | Named |
Default value: | Updated |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Confirm
cmdlet을 실행하기 전에 확인 메시지를 표시합니다.
형식: | System.Management.Automation.SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Credential
이 cmdlet이 System Center Data Access 서비스가 실행되는 서버에 연결하는 데 사용하는 자격 증명을 지정합니다. 지정된 사용자 계정에는 해당 서버에 대한 액세스 권한이 있어야 합니다.
형식: | System.Management.Automation.PSCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Criteria
구독에서 사용하는 XML 조건을 지정합니다. Filter 매개 변수와 Criteria 매개 변수가 모두 지정된 경우 이 cmdlet은 Criteria사용합니다.
형식: | System.String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Description
구독에 대해 설명합니다.
형식: | System.String |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DisplayName
구독의 표시 이름을 지정합니다.
형식: | System.String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Enable
이 cmdlet이 구독을 사용할 수 있는지 여부를 나타냅니다.
형식: | System.Boolean |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-GroupQueue
구독이 추적하는 개체 수에 제한을 설정할 그룹 또는 큐를 지정합니다.
형식: | System.String[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ManagementPack
이 cmdlet이 구독을 저장하는 관리 팩의 이름을 지정합니다.
형식: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
Default value: | The default management pack |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-PassThru
이 cmdlet이 만든 구독을 반환한다는 것을 나타냅니다. 이 개체를 다른 cmdlet에 전달할 수 있습니다.
형식: | System.Management.Automation.SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Recipient
이 구독이 전자 메일을 보내는 사용자 목록을 지정합니다.
형식: | Microsoft.EnterpriseManagement.Common.EnterpriseManagementObject[] |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-SCSession
Service Manager 관리 서버에 대한 세션을 나타내는 개체를 지정합니다.
형식: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Template
전자 메일 템플릿의 이름을 지정합니다.
형식: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Notifications.EmailTemplate |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행되면 어떻게 되는지 보여 주세요. cmdlet이 실행되지 않습니다.
형식: | System.Management.Automation.SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | False |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
None.
이 cmdlet에 입력을 파이프할 수 없습니다.
출력
None.
이 cmdlet은 출력을 생성하지 않습니다.