---
title: SecurityPrincipalExtensions
summary: API reference for SecurityPrincipalExtensions.
status: draft
owner: saif-docgen
last_reviewed: 2026-09-15
library: SAIF.Framework.Common
reference_type: package
---

# SecurityPrincipalExtensions

Extracts the account name and domain portions from an `IIdentity`'s `Name` (typically a Windows identity in `DOMAIN\user` form). ([BR-071](../../business-rules.md#br-071-a-windows-identity-name-is-interpreted-as-domain%5Cuser))

## Purpose
- Extracts the account name and domain portions from an `IIdentity`'s `Name` (typically a Windows identity in `DOMAIN\user` form). ([BR-071](../../business-rules.md#br-071-a-windows-identity-name-is-interpreted-as-domain%5Cuser))

## Context
- Namespace: `SAIF.Common.Extensions`
- Assembly/package: `SAIF.Framework.Common`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| UserId(this IIdentity identity) | `public static string UserId(this IIdentity identity)` | Returns the account-name portion following the domain separator, if present. ([BR-071](../../business-rules.md#br-071-a-windows-identity-name-is-interpreted-as-domain%5Cuser)) |
| Domain(this IIdentity identity) | `public static string Domain(this IIdentity identity)` | Returns the domain portion preceding the separator, or empty when the name is unqualified. ([BR-071](../../business-rules.md#br-071-a-windows-identity-name-is-interpreted-as-domain%5Cuser)) |


## Sources
- `Common/SAIF.Common/Extensions/SecurityPrincipalExtensions.cs`
