diff --git a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Extensions/ReceiverClaimExtensions.cs b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Extensions/ReceiverClaimExtensions.cs
index e4b29df9..13720e38 100644
--- a/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Extensions/ReceiverClaimExtensions.cs
+++ b/EnvelopeGenerator.Server/EnvelopeGenerator.Server/Extensions/ReceiverClaimExtensions.cs
@@ -96,6 +96,21 @@ public static class ReceiverClaimExtensions
throw new InvalidOperationException($"Claim '{EnvelopeClaimNames.ReceiverId}' is not a valid integer.");
}
+ ///
+ /// Gets the authenticated sender identifier from the 'sub' claim.
+ ///
+ ///
+ ///
+ ///
+ public static int SenderId(this ClaimsPrincipal user)
+ {
+ var senderIdStr = user.GetRequiredClaimValue(JwtRegisteredClaimNames.Sub, ClaimTypes.NameIdentifier);
+ if (int.TryParse(senderIdStr, out var senderId))
+ return senderId;
+ else
+ throw new InvalidOperationException($"Claim '{JwtRegisteredClaimNames.Sub}' is not a valid integer.");
+ }
+
///
///
///