DSInternals.Passkeys
3.2.0
Allows administrative registration of passkeys (i.e. FIDO2 security keys and Microsoft Authenticator mobile app) in Microsoft Entra ID (formerly Azure Active Directory) and Okta.
Minimum PowerShell version
5.1
Installation Options
Owners
Copyright
Copyright (c) 2021-2026 Michael Grafnetter. All rights reserved.
Package Details
Author(s)
- Michael Grafnetter
Tags
Windows FIDO2 Passkeys EntraID AzureAD Azure WebAuthn CTAP Security 2FA MFA Authentication Identity Passwordless Okta
Functions
Get-EntraPasskeyRegistrationOptions Get-OktaPasskeyRegistrationOptions New-Passkey Register-EntraPasskey Register-OktaPasskey Test-Passkey Connect-Okta Disconnect-Okta Get-PasskeyAuthenticatorPlugin Get-PasskeyAuthenticator Get-PasskeyWindowsHello Remove-PasskeyWindowsHello New-PasskeyRandomChallenge Get-PasskeyCreationOptions
PSEditions
Dependencies
Release Notes
- Added the -BrowserInPrivateMode switch (aliases -PrivateMode, -Private) to Test-Passkey and Get-PasskeyWindowsHello, signaling that the request originates from a browser in private/incognito mode so the operation is not written to the Windows event log.
- Get-PasskeyAuthenticator now exposes the authenticator AAGUID as a Guid? value on the new AaGuid property, replacing the previous Base64Url-encoded AuthenticatorId byte array.
- Underlying WebAuthnApi now prefers the native registration/assertion JSON produced by recent Windows builds, returning credentials (including clientExtensionResults) verbatim from the OS instead of reconstructing them field by field.
FileList
- DSInternals.Passkeys.nuspec
- DSInternals.Passkeys.Core.psm1
- DSInternals.Passkeys.Entra.psm1
- DSInternals.Passkeys.Format.ps1xml
- DSInternals.Passkeys.Okta.psm1
- DSInternals.Passkeys.psd1
- en-US\DSInternals.Passkeys.Core.psm1-help.xml
- en-US\DSInternals.Passkeys.Entra.psm1-help.xml
- en-US\DSInternals.Passkeys.Okta.psm1-help.xml
- en-US\about_DSInternals.Passkeys.help.txt
- net48\DSInternals.Win32.WebAuthn.dll
- net48\DSInternals.Win32.WebAuthn.pdb
- net48\Microsoft.Bcl.AsyncInterfaces.dll
- net48\Microsoft.Bcl.HashCode.dll
- net48\Microsoft.Bcl.Memory.dll
- net48\Microsoft.Bcl.TimeProvider.dll
- net48\Microsoft.Extensions.Logging.Abstractions.dll
- net48\Microsoft.Identity.Client.dll
- net48\Microsoft.IdentityModel.Abstractions.dll
- net48\Microsoft.IdentityModel.JsonWebTokens.dll
- net48\Microsoft.IdentityModel.Logging.dll
- net48\Microsoft.IdentityModel.Tokens.dll
- net48\System.Buffers.dll
- net48\System.Diagnostics.DiagnosticSource.dll
- net48\System.Formats.Asn1.dll
- net48\System.Formats.Cbor.dll
- net48\System.IO.Pipelines.dll
- net48\System.IdentityModel.Tokens.Jwt.dll
- net48\System.Memory.dll
- net48\System.Numerics.Vectors.dll
- net48\System.Runtime.CompilerServices.Unsafe.dll
- net48\System.Text.Encodings.Web.dll
- net48\System.Text.Json.dll
- net48\System.Threading.Tasks.Extensions.dll
- net8.0-windows\DSInternals.Win32.WebAuthn.dll
- net8.0-windows\DSInternals.Win32.WebAuthn.pdb
- net8.0-windows\Microsoft.Bcl.Memory.dll
- net8.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll
- net8.0-windows\Microsoft.Extensions.Logging.Abstractions.dll
- net8.0-windows\Microsoft.Identity.Client.dll
- net8.0-windows\Microsoft.IdentityModel.Abstractions.dll
- net8.0-windows\Microsoft.IdentityModel.JsonWebTokens.dll
- net8.0-windows\Microsoft.IdentityModel.Logging.dll
- net8.0-windows\Microsoft.IdentityModel.Tokens.dll
- net8.0-windows\NSec.Cryptography.dll
- net8.0-windows\System.Diagnostics.EventLog.dll
- net8.0-windows\System.Formats.Cbor.dll
- net8.0-windows\System.IdentityModel.Tokens.Jwt.dll