Skip to content

Commit ec25c55

Browse files
authored
Merge pull request #914 from DuendeSoftware/mb/fips
Add FIPS compliance documentation to deployment section
2 parents 8c7ecec + c6fa052 commit ec25c55

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
title: Federal Information Processing Standard (FIPS) compliance
3+
description: Explains Duende IdentityServer Federal Information Processing Standard (FIPS) compliance.
4+
date: 2025-10-09-10T08:20:20+02:00
5+
sidebar:
6+
label: FIPS compliance
7+
order: 90
8+
---
9+
10+
The Federal Information Processing Standard (FIPS) Publication 140-2 is a U.S. government standard that defines minimum
11+
security requirements for cryptographic modules in information technology products.
12+
13+
IdentityServer does not provide built-in FIPS enforcement or a configuration option to enable FIPS compliance. There is no toggle switch or configuration profile that will automatically make your solution FIPS-compliant.
14+
15+
You are solely responsible for ensuring FIPS compliance in your application and infrastructure. This includes:
16+
17+
- Configuring your operating system for FIPS mode
18+
- Selecting and using only FIPS-validated cryptographic algorithms
19+
- Properly managing and storing cryptographic key material
20+
- Validating that your complete solution meets FIPS requirements
21+
22+
Duende IdentityServer does not contain its own cryptographic algorithm implementations. Instead, it relies on cryptographic primitives provided by:
23+
24+
- The underlying .NET runtime
25+
- The operating system
26+
27+
When IdentityServer signs tokens or protects cookies, it uses the cryptographic modules provided by these underlying platforms. However, IdentityServer does not restrict or enforce which algorithms or key sizes you use. This is your responsibility to configure correctly.
28+
29+
To build a FIPS-compliant solution with Duende IdentityServer, here is some guidance:
30+
31+
1. **Configure your operating system and .NET Core codebase** for FIPS mode following the guidance in the [Microsoft documentation on .NET Core FIPS compliance](https://learn.microsoft.com/en-us/dotnet/standard/security/fips-compliance)
32+
33+
2. **Select only FIPS-validated algorithms** in your IdentityServer configuration:
34+
- **Do not use:** `RS256`, `RS384`, or `RS512`
35+
- **Use instead:** `PS*` or `ES*` token signing algorithms
36+
37+
3. **Use secure key storage** for private key material, such as:
38+
- Azure Key Vault Hardware Security Module (HSM)
39+
- Other FIPS 140-2 validated hardware security modules
40+
41+
4. **Configure ASP.NET Core Data Protection** appropriately:
42+
- Use FIPS-compliant algorithms for generating data protection keys
43+
- Store data protection keys securely in a FIPS-validated module
44+
45+
Remember, it is your responsibility to validate that your complete solution meets FIPS compliance requirements for your specific use case and regulatory environment.

0 commit comments

Comments
 (0)