SpnManager Kerberos SPN auditing and repair for Active Directory

New-DfsSpnPlan

Business value:

Business value: - Resolves namespace server’s DistinguishedName from Active Directory for DR-524 SPNPlan. - Reduces manual effort in resolving namespace servers for DFS.

Who uses this: - IT administrators responsible for domain-based DFS setup. - Domain engineers managing large-scale deployments.

Risks: - Incorrect resolution of namespace server’s DistinguishedName can lead to registration errors. - Lack of knowledge about Active Directory configuration and its implications.

When a manager cares: - When there are issues with SPN registration and namespace server resolution. - During domain-based DFS setup and deployment for large-scale environments.

Day-to-day use:

  1. Get the candidate from Get-DfsSpnCandidate.
  2. Use this candidate in New-DfsSpnPlan.

Common patterns: - Use this command after ensuring the Active Directory configuration is correct. - Monitor for namespace server resolution issues and SPN registration errors.

Code examples:

$candidate = Get-DfsSpnCandidate -TargetComputer 'example'
$result = New-DfsSpnPlan -Candidate $candidate

Watchpoints: - Verify that the candidate has the expected SPNs before passing it to New-DfsSpnPlan. - Monitor Active Directory for any changes that may affect namespace server resolution.

What this does:

  1. Takes a candidate from Get-DfsSpnCandidate as input.
  2. Resolves the namespace server’s DistinguishedName from Active Directory.
  3. Outputs a resolved SPN plan.

Step-by-step recipe: - Get the candidate with Get-DfsSpnCandidate. - Pass the candidate to New-DfsSpnPlan.

What to do when stuck:

  • Verify that the input candidate is correct and has expected SPNs.
  • Check Active Directory configuration for any issues related to namespace server resolution.
Field Value
Vendor Detent Point LLC
Product SpnManager 0.4.0
Licence Proprietary - licensed, not sold. See LICENSE.
Operational impact Read-only. Queries Active Directory and reports findings; changes nothing.
Rights required Directory read access.
Providers covered framework surface (not provider-specific)
Approval recommendation Approve for general operational use. It cannot alter directory state.

Licence terms are proprietary and are supplied with the purchase, subscription or evaluation agreement. No open-source licence is granted.

What Why
Windows PowerShell 5.1 or later Declared by the module manifest.
ActiveDirectory 1.0.0.0 Required module. Ships with RSAT; install the Active Directory PowerShell feature.
A reachable domain controller Every provider reads from Active Directory.
An account with directory read access Needed to enumerate accounts and their SPNs.

Data-handling: - The command resolves namespace server’s DistinguishedName from Active Directory. - Output is a resolved SPN plan, which can be used for SPN registration.

Transit and at-rest: - Data in transit is encrypted using the default encryption mechanism of PowerShell. - At rest, the data is stored securely within the system’s memory and caches.

Audit trail: - The command does not create any audit records or logs by itself. - However, the output can be used to generate an audit record for SPN registration.

Compliance requirements: - Familiarity with Active Directory configuration and namespace server resolution is essential. - Ensure that the input candidate has expected SPNs before passing it to New-DfsSpnPlan.

Example 1

Get-DfsSpnCandidate -DfsRoots $r | New-DfsSpnPlan

Also uses: Get-DfsSpnCandidate (Sense).

Example 2

New-DfsSpnPlan -Candidate $candidate

Example 3

Get-DfsSpnCandidate -TargetComputer 'srv01' | New-DfsSpnPlan | Test-SpnPlan

Also uses: Get-DfsSpnCandidate (Sense), Test-SpnPlan (Test).