Author Posts

September 26, 2016 at 9:50 am

Hi,

I'm trying to resolve an issue we are facing.

we are able to communicate to Exchange Server EMS Script from remote machine through winRM HTTP authentication.

$newSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://test.domain.com/PowerShell/ -Authentication Kerberos -Credential $Credentials
Import-PSSession $newSession

But we have to impose WinRM HTTPS, so I have set everything required for that including certificate creation , winRM settings etc.

And we are able to connect to remote machine where exchange server is available:

Enter-PSSession -ComputerName test.domain.com -Credential $credentials -UseSSL

and this works.

Now when I'm using -UseSSL in New-PSSession/Enter-PSSession for EMS, its not working:

$newSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://test.domain.com/PowerShell/ -Credential $Credentials -UseSSL

Error: New-PSSession : Parameter set cannot be resolved using the specified named parameters.

Please note: I need WinRM (powershell) Connectivity through HTTPS: -UseSSL Authentication. Not with Kerberos/Defaut/CredSSP

September 26, 2016 at 9:12 pm

Have looked at Secrets of Powershell remoting to see if answers you question?

September 27, 2016 at 5:28 am

Here is the conclusion:
-UseSSL tells the command to use the HTTPS port.
SSL is not an authentication it is a protocol. Kerberos/CredSSP/basic are all authentication protocols. SSL is the transport protocol. Authentication is separate from transport.
Note again that all PowerShell remoting via WSMan is always encrypted even if it is HTTP. Kerberos is always encrypted.

What I should do is, specify the https prefix instead of using the -useSSL switch which will ensure that connection is over https ("https://test.domain.com/PowerShell/);. The -useSSL is meant to be used when you using the -ComputerName parameter.

  • This reply was modified 1 year, 12 months ago by  Rahul Nair.