Add-DnsServerTrustAnchor
Adds a trust anchor to a DNS server.
Syntax
Add-DnsServerTrustAnchor
[-Name] <String>
[-KeyProtocol <String>]
-Base64Data <String>
[-ComputerName <String>]
[-CryptoAlgorithm] <String>
[-PassThru]
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-DnsServerTrustAnchor
[-Name] <String>
[-ComputerName <String>]
[-CryptoAlgorithm] <String>
[-PassThru]
-KeyTag <UInt16>
-DigestType <String>
-Digest <String>
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Add-DnsServerTrustAnchor
[-ComputerName <String>]
[-PassThru]
[-Root]
[-CimSession <CimSession[]>]
[-ThrottleLimit <Int32>]
[-AsJob]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
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.
If you specify the Root parameter the cmdlet retrieves the trust anchors from the URL specified in RootTrustAnchorsURL property of the DNS server.
Examples
Example 1: Add a trust anchor to a DNS server
PS C:\>Get-DnsServerResourceRecord -ZoneName "sec.contoso.com" -RRType "dnskey" -ComputerName DNS1 | %{ $_.RecordData | Add-DnsServerTrustAnchor -PassThru -Verbose -Name "sec.contoso.com"}
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
TrustAnchorName TrustAnchorType TrustAnchorState TrustAnchorData
--------------- --------------- ---------------- ---------------
sec.contoso.com DNSKEY Valid [23600][DnsSec][RsaSha256][AwEAAbZvBTiMzoqK...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [53180][DnsSec][RsaSha256][AwEAAbsS7NnziyRY...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [50272][DnsSec][RsaSha256][AwEAAe1EkxNj6M1b...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [37436][DnsSec][RsaSha256][AwEAAa1PJyk2lITB...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [2895][DnsSec][RsaSha1NSec3][AwEAAbOk5nl41M...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [62250][DnsSec][RsaSha1NSec3][AwEAAci9Ayfjg...
VERBOSE: Adding trust anchor for trust point sec.contoso.com of type DNSKEY on server Server01.
sec.contoso.com DNSKEY Valid [47244][DnsSec][RsaSha1NSec3][AwEAAcFv94ne6...
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.
Example 2: Add a trust anchor from the RootTrustAnchorsURL property
PS C:\>Add-DnsServerTrustAnchor -Root
This command adds the trust anchors from the URL specified by the RootTrustAnchorsURL property of the DNS server.
Parameters
-AsJob
ps_cimcommon_asjob
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Base64Data
Specifies key data.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-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-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227967 or Get-CimSessionhttp://go.microsoft.com/fwlink/p/?LinkId=227966 cmdlet. The default is the current session on the local computer.
Type: | CimSession[] |
Aliases: | Session |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
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.
Type: | String |
Aliases: | Cn |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CryptoAlgorithm
Specifies the cryptographic algorithm that the cmdlet uses for key generation.
Type: | String |
Accepted values: | RsaSha1, RsaSha256, RsaSha512, RsaSha1NSec3, ECDsaP256Sha256, ECDsaP384Sha384 |
Position: | 2 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Digest
Specifies the DS digest data.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DigestType
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
Type: | String |
Accepted values: | Sha1, Sha256, Sha384 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-KeyProtocol
Specifies the protocol name. The default is DNSSEC.
Type: | String |
Accepted values: | DnsSec |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-KeyTag
Specifies the unique key tag that the DNS server uses to identify a key.
Type: | UInt16 |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Specifies the name of a trust anchor on a DNS server.
Type: | String |
Aliases: | TrustAnchorName |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
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.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Root
Indicates that the cmdlet adds the trust anchor of the root zone from the URL specified by the RootTrustAnchorsURL property of the DNS server.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
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.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
The DnsServerTrustAnchor object contains the following fields:
- EnteredStateTime
- KeyTag
- NextStateTime
- TrustAnchorData
- TrustAnchorName
- TrustAnchorState
- TrustAnchorType