Add-DnsServerTrustAnchor

Add-DnsServerTrustAnchor

Adds a trust anchor to a DNS server.

Syntax

Parameter Set: DnsKey
Add-DnsServerTrustAnchor [-Name] <String> [-CryptoAlgorithm] <String> -Base64Data <String> [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-KeyProtocol <String> ] [-PassThru] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: DS
Add-DnsServerTrustAnchor [-Name] <String> [-CryptoAlgorithm] <String> -Digest <String> -DigestType <String> -KeyTag <UInt16> [-AsJob] [-CimSession <CimSession[]> ] [-ComputerName <String> ] [-PassThru] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Detailed Description

The Add-DnsServerTrustAnchor cmdlet adds a trust anchor (DNSKEY record or DS record) to a DNS server. If no trust anchor is present, the cmdlet creates one. If you specify the DigestType parameter, the cmdlet adds a trust anchor delegation signer (DS) record.

Parameters

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Base64Data<String>

Specifies key data.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-CimSession<CimSession[]>

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ComputerName<String>

Specifies a remote DNS server. The acceptable values for this parameter are: an IP address or any value that resolves to an IP address, such as a fully qualified domain name (FQDN), host name, or NETBIOS name.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CryptoAlgorithm<String>

Specifies the cryptographic algorithm that the cmdlet uses for key generation.

Aliases

none

Required?

true

Position?

3

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Digest<String>

Specifies the DS digest data.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-DigestType<String>

Specifies the type of algorithm that the zone signing key uses to create the DS record. Valid values are one or more of the following:
-- Sha1
-- Sha256
-- Sha384

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-KeyProtocol<String>

Specifies the protocol name. The default is DNSSEC.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-KeyTag<UInt16>

Specifies the unique key tag that the DNS server uses to identify a key.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Name<String>

Specifies the name of a trust anchor on a DNS server.

Aliases

none

Required?

true

Position?

2

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Confirm

Prompts you for confirmation before running the cmdlet.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Required?

false

Position?

named

Default Value

false

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.

  • Microsoft.Management.Infrastructure.CimInstance#DnsServerTrustAnchor

Examples

Example 1: Add a trust anchor to a DNS server

This command uses the Get-DnsServerResourceRecord cmdlet to obtain a DnsKey resource record from the DNS server DNS1 for the zone named sec.contoso.com. The command then uses the pipe operator to send it to the Add-DnsServerTrustAnchor cmdlet to add a trust anchor to the current DNS server for this zone.

PS C:\> Get-DnsServerResourceRecord -ZoneName "sec.contoso.com" -RRType "dnskey" –ComputerName DNS1 | %{ $_.RecordData | Add-DnsServerTrustAnchor -PassThru -Verbose -Name "sec.contoso.com"}

Get-DnsServerTrustAnchor

Import-DnsServerTrustAnchor

Remove-DnsServerTrustAnchor

Get-DnsServerResourceRecord