# ConvertFrom-MailAuthenticationRecordDkim

Returns structured RFC compliant object from DKIM record

Source: https://maester.dev/docs/commands/ConvertFrom-MailAuthenticationRecordDkim

## SYNOPSIS

Returns structured RFC compliant object from DKIM record

## SYNTAX

```powershell
ConvertFrom-MailAuthenticationRecordDkim [-DomainName] <String> [[-DnsServerIpAddress] <IPAddress>]
 [-DkimDnsName] <String> [-QuickTimeout] [-NoHostsFile] [-ProgressAction <ActionPreference>]
 [<CommonParameters>]
```

## DESCRIPTION

Adapted from:
- https://cloudbrothers.info/en/powershell-tip-resolve-spf/
- https://github.com/cisagov/ScubaGear/blob/main/PowerShell/ScubaGear/Modules/Providers/ExportEXOProvider.psm1
- https://xkln.net/blog/getting-mx-spf-dmarc-dkim-and-smtp-banners-with-powershell/
- DKIM https://datatracker.ietf.org/doc/html/rfc6376
```
record      : v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCPkb8bu8RGWeJGk3hJrouZXIdZ+HTp/azRp8IUOHp5wKvPUAi/54PwuLscUjRk4Rh3hjIkMpKRfJJXPxWbrT7eMLric
7f/S0h+qF4aqIiQqHFCDAYfMnN6V3Wbke2U5EGm0H/cAUYkaf2AtuHJ/rdY/EXaldAm00PgT9QQMez66QIDAQAB;
keyType     : rsa
hash        : {sha1, sha256}
notes       :
publicKey   : MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCPkb8bu8RGWeJGk3hJrouZXIdZ+HTp/azRp8IUOHp5wKvPUAi/54PwuLscUjRk4Rh3hjIkMpKRfJJXPxWbrT7eMLric7f/S0h+qF4aqIiQqHF
CDAYfMnN6V3Wbke2U5EGm0H/cAUYkaf2AtuHJ/rdY/EXaldAm00PgT9QQMez66QIDAQAB
validBase64 : True
services    : {*}
flags       :
warnings    :
```

## EXAMPLES

### EXAMPLE 1

```powershell
ConvertFrom-MailAuthenticationRecordDkim -DomainName "microsoft.com"
```

Returns [DKIMRecord], "Failure to obtain record" when the record name does not exist (NXDOMAIN), or "DNS lookup unavailable" when the lookup fails for another reason

## PARAMETERS

### -DomainName

Domain name to check.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: 1
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -DnsServerIpAddress

DNS-server to use for lookup.

```yaml
Type: IPAddress
Parameter Sets: (All)
Aliases:

Required: False
Position: 2
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -DkimDnsName

DKIM DNS record Name to retrieve.

```yaml
Type: String
Parameter Sets: (All)
Aliases:

Required: True
Position: 3
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### -QuickTimeout

Use a shorter timeout value for the DNS lookup.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -NoHostsFile

Ignore hosts file for domain lookup.

```yaml
Type: SwitchParameter
Parameter Sets: (All)
Aliases:

Required: False
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
```

### -ProgressAction

Determines how PowerShell responds to progress updates generated by a script, cmdlet, or provider, such as the progress bars generated by Write-Progress.

```yaml
Type: ActionPreference
Parameter Sets: (All)
Aliases: proga

Required: False
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
```

### CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).

## INPUTS

## OUTPUTS

### ConvertFrom-MailAuthenticationRecordDkim.DKIMRecord

### System.String
## NOTES

## RELATED LINKS

[https://maester.dev/docs/commands/ConvertFrom-MailAuthenticationRecordDkim](https://maester.dev/docs/commands/ConvertFrom-MailAuthenticationRecordDkim)
