0

I have already read this question, that describes a problem similar to mine but not the same none the less.

I have the following Powershell output when I try to run IdentityServer.json script using SIF 2.1.0:

VERBOSE: Resolving ConfigFunction extension 'ResolveCertificatePath'
VERBOSE: Resolved 'Invoke-ResolveCertificatePathConfigFunction'
VERBOSE: Resolving ConfigFunction extension 'joinpath'
VERBOSE: Resolved 'Invoke-JoinPathConfigFunction'
VERBOSE: Resolving ConfigFunction extension 'GetCertificateThumbprint'
VERBOSE: Resolved 'Invoke-GetCertificateThumbprintConfigFunction'
Install-SitecoreConfiguration : Unable to parse [ResolveCertificatePath(variable('Security.IdentityServer.CertificatePath'))] - Exception calling "Evaluate" with "2" argument(s): "The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Unable to parse [joinpath(variable('Security.CertificateStore'), variable('Security.IdentityServer.CertificateThumbprint'))] - Exception calling "Evaluate" with "2" argument(s): "The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Unable to parse [GetCertificateThumbprint(parameter('SitecoreIdentityCert'), variable('Security.CertificateStore'))] - Exception calling "InvokeWithContext" with "2" argument(s): "Cannot bind argument to parameter 'Id' because it is an empty string."""
At line:1 char:1
+ Install-SitecoreConfiguration –Path "C:\Sitecore\ConfigurationFiles\I ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Write-Error],    WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Install-SitecoreConfiguration

[TIME] 00:00:04
GetConfigFunctionResult : Unable to parse [ResolveCertificatePath(variable('Security.IdentityServer.CertificatePath'))] - Exception calling "Evaluate" with "2" argument(s): "The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Unable to parse [joinpath(variable('Security.CertificateStore'), variable('Security.IdentityServer.CertificateThumbprint'))] - Exception calling "Evaluate" with "2" argument(s): "The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: Unable to parse [GetCertificateThumbprint(parameter('SitecoreIdentityCert'), variable('Security.CertificateStore'))] -
Exception calling "InvokeWithContext" with "2" argument(s): "Cannot bind argument to parameter 'Id' because it is an empty string."""
At C:\Program Files\WindowsPowerShell\Modules\SitecoreInstallFramework\2.1.0\Private\JsonConfiguration.ps1:226 char:20
+ ...      return GetConfigFunctionResult -FunctionText $InputObject -Param ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,GetConfigFunctionResult

QUESTION(s)

Is this saying that the SitecoreIdentityCert parameter is missing? If so, am I supposed to specify what exactly, the name of this certificate in the Certificates Store?

I previously installed a default developer version of XP1 Scaled using SIF, but the self-signed certificates were created automatically. Why is this not happening this time?

  • 1
    yes you have to give a certificate name, this certificate will be used for https binding for your identity server website and thumbprint of the certificate will be configured in identity server configuration as well. If you are running IdentityServer.json directly, verify that you are passing all default parameters as expected. – Vipin Banka Aug 27 at 2:14
  • Thank you Vipin - if you phrase this comment as an answer I'll be happy to accept it. – Emanuele Ciriachi Aug 27 at 22:41
1

OOTB IdentityServer.json needs a certificate name, that certificate name is used to create a Server+Client authentication certificate, and that certificate is further used for following:

  1. HTTPS binding in IIS for Identity Server website.
  2. Thumbprint of certificate used inside configuration of identity server. See "CertificateThumbprint" setting value in file {Your-Identityserver-webroot}\Config\production\Sitecore.IdentityServer.Host.xml

If you are trying to execute IdentityServer.json directly, I would suggest you to review all default parameters in the json file and check the values are correct for your requirement.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.