forked from dsccommunity/xPSDesiredStateConfiguration
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathxService_CreateServiceConfigGroupManagedServiceAccount.ps1
More file actions
85 lines (72 loc) · 2.72 KB
/
Copy pathxService_CreateServiceConfigGroupManagedServiceAccount.ps1
File metadata and controls
85 lines (72 loc) · 2.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<#PSScriptInfo
.VERSION 1.0.0
.GUID 9c377df3-c4d5-4cbd-b631-78e320bdcdd9
.AUTHOR Microsoft Corporation
.COMPANYNAME Microsoft Corporation
.COPYRIGHT
.TAGS DSCConfiguration
.LICENSEURI https://github.com/PowerShell/xPSDesiredStateConfiguration/blob/master/LICENSE
.PROJECTURI https://github.com/PowerShell/xPSDesiredStateConfiguration
.ICONURI
.EXTERNALMODULEDEPENDENCIES
.REQUIREDSCRIPTS
.EXTERNALSCRIPTDEPENDENCIES
.RELEASENOTES First version.
.PRIVATEDATA 2016-Datacenter,2016-Datacenter-Server-Core
#>
#Requires -module @{ModuleName = 'xPSDesiredStateConfiguration';ModuleVersion = '8.2.0.0'}
<#
.SYNOPSIS
Configuration that creates a new Windows service from an executable
and uses a Group Managed Service Account to start the service.
.DESCRIPTION
Configuration that creates a new Windows service from an executable.
The executable must be built to run as a Windows service.
.PARAMETER Path
The path to the executable for the Windows service.
.PARAMETER Name
The name of the Windows service to be created.
.PARAMETER GroupManagedServiceAccount
The name of the GroupManagedServiceAccount to run the service.
.EXAMPLE
$gmsaSplat = @{
Path = 'C:\FilePath\MyServiceExecutable.exe'
Name = 'Service1'
GroupManagedServiceAccount = 'DOMAIN\gMSA$'
}
xService_CreateServiceConfigGroupManagedServiceAccount @gmsaSplat
Compiles a configuration that creates a new service with the name Service1
using the executable path 'C:\FilePath\MyServiceExecutable.exe'.
If the service with the name Service1 already exists and the executable
path is different, then the executable will be changed for the service.
The service is started by default if it is not running already. The user
DOMAIN\gMSA$ is used to start the service, the username could also be provided
in UPN format (gMSA$@domain.fqdn).
#>
Configuration xService_CreateServiceConfigGroupManagedServiceAccount
{
[CmdletBinding()]
param
(
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$GroupManagedServiceAccount
)
Import-DscResource -ModuleName 'xPSDesiredStateConfiguration'
Node localhost
{
xService 'CreateService'
{
Name = $Name
Ensure = 'Present'
Path = $Path
GroupManagedServiceAccount = $GroupManagedServiceAccount
}
}
}