Test-AdfsFarmInstallation

Test-AdfsFarmInstallation

Runs prerequisite checks for installing a new federation server farm.

Syntax

Parameter Set: ADFSFarmCreateLocalDatabase
Test-AdfsFarmInstallation -ServiceAccountCredential <PSCredential> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: __AllParameterSets
Test-AdfsFarmInstallation -FederationServiceName <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-FederationServiceDisplayName <String> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: ADFSFarmCreateLocalDatabaseDisableAutoCertRollover
Test-AdfsFarmInstallation -DecryptionCertificateThumbprint <String> -ServiceAccountCredential <PSCredential> -SigningCertificateThumbprint <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: AdfsFarmCreateLocalDatabaseDisableAutoCertRolloverGmsa
Test-AdfsFarmInstallation -DecryptionCertificateThumbprint <String> -GroupServiceAccountIdentifier <String> -SigningCertificateThumbprint <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: AdfsFarmCreateLocalDatabaseGmsa
Test-AdfsFarmInstallation -GroupServiceAccountIdentifier <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: ADFSFarmCreateSharedDatabase
Test-AdfsFarmInstallation -ServiceAccountCredential <PSCredential> -SQLConnectionString <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: ADFSFarmCreateSharedDatabaseDisableAutoCertRollover
Test-AdfsFarmInstallation -DecryptionCertificateThumbprint <String> -ServiceAccountCredential <PSCredential> -SigningCertificateThumbprint <String> -SQLConnectionString <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: AdfsFarmCreateSharedDatabaseDisableAutoCertRolloverGmsa
Test-AdfsFarmInstallation -DecryptionCertificateThumbprint <String> -GroupServiceAccountIdentifier <String> -SigningCertificateThumbprint <String> -SQLConnectionString <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Parameter Set: AdfsFarmCreateSharedDatabaseGmsa
Test-AdfsFarmInstallation -GroupServiceAccountIdentifier <String> -SQLConnectionString <String> [-CertificateThumbprint <String> ] [-Credential <PSCredential> ] [-OverwriteConfiguration] [-SSLPort <Int32> ] [-TlsClientPort <Int32> ] [ <CommonParameters>]

Detailed Description

The Test-AdfsFarmInstallation cmdlet performs the checks that you must complete before you run the Install-AdfsFarm cmdlet to install a new federation server farm.

Parameters

-CertificateThumbprint<String>

Specifies the value of the thumbprint of the certificate that the Secure Sockets Layer (SSL) binding of the default website uses in Internet Information Services (IIS). This value must match the thumbprint of a valid certificate in the certificate store of the local computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Credential<PSCredential>

Specifies a PSCredential object based on a user name and password. To obtain a PSCredential object, use the Get-Credential cmdlet. For more information, type Get-Help Get-Credential.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-DecryptionCertificateThumbprint<String>

Specifies the value of the thumbprint of the certificate that Active Directory Federation Services (AD FS) uses for token decryption. If you specify this parameter, AD FS disables automatic certificate rollover, and you must specify a token signing certificate by specifying the SigningCertificateThumbprint parameter. This value must match the thumbprint of a valid certificate in the certificate store of the local computer.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-FederationServiceDisplayName<String>

Specifies the display name of the Federation Service. The name of the Federation Service appears by default in sign-in pages.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-FederationServiceName<String>

Specifies the Domain Name System (DNS) name of the Federation Service. This value must match the subject name of the certificate that you configure on the SSL binding in IIS.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-GroupServiceAccountIdentifier<String>

Specifies the name of the group Managed Service Account that the AD FS service uses as the logon identity for the AD FS Windows service.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-OverwriteConfiguration

Indicates that the AD FS service removes an existing AD FS configuration database and overwrites it with a new database.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ServiceAccountCredential<PSCredential>

Specifies a PSCredential object based on a user name and password for the service account in Active Directory® Domain Services under which the AD FS service runs. To obtain a PSCredential object, use the Get-Credential cmdlet. For more information, type Get-Help Get-Credential.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SigningCertificateThumbprint<String>

Specifies the value of the thumbprint of the certificate that the AD FS service uses for token signing. If you specify this parameter, AD FS disables automatic certificate rollover, and you must also specify a token decryption certificate by using the DecryptionCertificateThumbprint parameter. This value must match the thumbprint of a valid certificate in the certificate store of the local computer.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SQLConnectionString<String>

Specifies the Microsoft SQL Server database that stores the AD FS configuration settings. If you do not specify this parameter, the AD FS installer uses the Windows Internal Database to store configuration settings.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SSLPort<Int32>

Specifies the value of the port number of the SSL binding that the AD FS website uses.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TlsClientPort<Int32>

Specifies the port number that the AD FS service uses for Transport Layer Security (TLS) authentication for the user certificate client. The default value is 49443.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

Outputs

The output type is the type of the objects that the cmdlet emits.

  • System.Object

Examples

Example 1: Test the creation of a node in a federation server farm

The first command uses the Get-Credential cmdlet to create a credential object for the Active Directory account under which the AD FS service runs. The command stores the credential object in the $Cred variable.

The second command tests the creation the first node in a federation server farm that uses the Windows Internal Database on the local server computer. The command specifies a thumbprint of the certificate. AD FS uses this certificate as the SSL certificate and the service communications certificate. The command uses automatically generated, self-signed certificates for the token signing and token decryption certificates. The command specifies the credentials stored in $Cred for the Active Directory account under which the AD FS service runs.

PS C:\> $Cred = Get-Credential
PS C:\> Test-AdfsFarmInstallation -CertificateThumbprint 8169c52b4ec6e77eb2ae17f028fe5da4e35c0bed -FederationServiceName "FS.Corp.Contoso.com" -ServiceAccountCredential $Cred

Install-AdfsFarm

Test-AdfsFarmJoin

Test-SslCertificate

Get-Credential