DSCResources/DSC_xPSSessionConfiguration/en-US/about_xPSEndpoint.help.txt
.NAME
xPSEndpoint .DESCRIPTION Creates and registers a new session configuration endpoint. .PARAMETER Name Key - String Specifies the name of the session configuration. .PARAMETER Ensure Write - String Allowed values: Present, Absent Indicates if the session configuration should exist. The default value is 'Present'. .PARAMETER StartupScript Write - String Specifies the startup script for the configuration. Enter the fully qualified path of a Windows PowerShell script. .PARAMETER RunAsCredential Write - Instance Specifies the credential for commands of this session configuration. By default, commands run with the permissions of the current user. .PARAMETER SecurityDescriptorSDDL Write - String Specifies the Security Descriptor Definition Language (SDDL) string for the configuration. This string determines the permissions that are required to use the new session configuration. To use a session configuration in a session, users must have at least Execute(Invoke) permission for the configuration. .PARAMETER AccessMode Write - String Allowed values: Local, Remote, Disabled Enables and disables the session configuration and determines whether it can be used for remote or local sessions on the computer. The default value is 'Remote'. .EXAMPLE 1 #Requires -Module xPSDesiredStateConfiguration <# .DESCRIPTION Configuration that creates and registers a new session configuration endpoint. .PARAMETER Name The name of the session configuration. .PARAMETER AccessMode The access mode for the session configuration. The default value is 'Remote'. .EXAMPLE xPSEndpoint_NewConfig -Name 'MaintenanceShell' Compiles a configuration that creates and registers a new session configuration endpoint named 'MaintenanceShell'. .EXAMPLE xPSEndpoint_New_Config -Name 'MaintenanceShell' Compiles a configuration that creates and registers a new session configuration endpoint named 'MaintenanceShell'. .EXAMPLE xPSEndpoint_New_Config -Name 'Microsoft.PowerShell.Workflow' -AccessMode 'Local' Compiles a configuration that sets the access mode to 'Local' for the endpoint named 'Microsoft.PowerShell.Workflow'. .EXAMPLE xPSEndpoint_New_Config -Name 'Microsoft.PowerShell.Workflow' -AccessMode 'Disable' Compiles a configuration that disables access for the endpoint named 'Microsoft.PowerShell.Workflow'. #> Configuration xPSEndpoint_New_Config { param ( [Parameter(Mandatory = $true)] [System.String] $Name, [Parameter()] [ValidateSet('Local', 'Remote', 'Disabled')] [System.String] $AccessMode = 'Remote' ) Import-DscResource -ModuleName xPSDesiredStateConfiguration Node 'localhost' { xPSEndpoint NewEndpoint { Name = $Name AccessMode = $AccessMode Ensure = 'Present' } } } .EXAMPLE 2 #Requires -Module xPSDesiredStateConfiguration <# .DESCRIPTION Configuration that creates and registers a new session configuration endpoint. .PARAMETER Name The name of the session configuration. .PARAMETER AccessMode The access mode for the session configuration. The default value is 'Remote'. .PARAMETER RunAsCredential The credential for commands of this session configuration. .PARAMETER SecurityDescriptorSddl The permissions that are required to use the new session configuration in the form of a Security Descriptor Definition Language (SDDL) string. .PARAMETER StartupScript The access mode for the session configuration. The default value is 'Remote'. .NOTES To use the sample(s) with credentials, see blog at http://blogs.msdn.com/b/powershell/archive/2014/01/31/want-to-secure-credentials-in-windows-powershell-desired-state-configuration.aspx .EXAMPLE xPSEndpoint_NewCustom_Config -Name 'MaintenanceShell' -RunAsCredential (Get-Credential) -AccessMode 'Remote' -SecurityDescriptorSddl 'O:NSG:BAD:P(A;;GX;;;DU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)' -StartupScript 'C:\Scripts\Maintenance.ps1' Compiles a configuration that creates and registers a new session configuration endpoint named 'MaintenanceShell'. The group 'Domain Users' has Invoke permission, and commands will run with the credentials provided in the parameter RunAsCredential. The script 'C:\Scripts\Maintenance.ps1' will run when a new session is started using this session configuration endpoint. #> Configuration xPSEndpoint_NewCustom_Config { param ( [Parameter(Mandatory = $true)] [System.String] $Name, [Parameter()] [ValidateSet('Local', 'Remote', 'Disabled')] [System.String] $AccessMode = 'Remote', [Parameter(Mandatory = $true)] [System.Management.Automation.PSCredential] $RunAsCredential, [Parameter(Mandatory = $true)] [System.String] $SecurityDescriptorSddl, [Parameter(Mandatory = $true)] [System.String] $StartupScript ) Import-DscResource -ModuleName xPSDesiredStateConfiguration Node 'localhost' { xPSEndpoint NewEndpoint { Name = $Name Ensure = 'Present' AccessMode = $AccessMode RunAsCredential = $RunAsCredential SecurityDescriptorSddl = $SecurityDescriptorSddl StartupScript = $StartupScript } } } .EXAMPLE 3 #Requires -Module xPSDesiredStateConfiguration <# .DESCRIPTION Configuration that creates and registers a new session configuration endpoint. .PARAMETER Name The name of the session configuration. .EXAMPLE xPSEndpoint_NewWithDefaults_Config -Name 'MaintenanceShell' Compiles a configuration that creates and registers a new session configuration endpoint named 'MaintenanceShell'. #> Configuration xPSEndpoint_NewWithDefaults_Config { param ( [Parameter(Mandatory = $true)] [System.String] $Name ) Import-DscResource -ModuleName xPSDesiredStateConfiguration Node localhost { xPSEndpoint NewEndpoint { Name = $Name Ensure = 'Present' } } } .EXAMPLE 4 #Requires -Module xPSDesiredStateConfiguration <# .DESCRIPTION Configuration that creates and registers a new session configuration endpoint. .PARAMETER Name The name of the session configuration. .EXAMPLE xPSEndpoint_Remove_Config -Name 'MaintenanceShell' Compiles a configuration that removes the session configuration endpoint named 'MaintenanceShell'. #> Configuration xPSEndpoint_Remove_Config { param ( [Parameter(Mandatory = $true)] [System.String] $Name ) Import-DscResource -ModuleName xPSDesiredStateConfiguration Node localhost { xPSEndpoint RemoveEndpoint { Name = $Name Ensure = 'Absent' } } } |