refactor: AsymmetricPublicKey durch ClientPublicKey ersetzt und RSA-Schlüsselverwaltung verbessert
- `AsymmetricPublicKey` in `ClientPublicKey` umbenannt - `ClientPublicKey` von `RSAKeyBase` abgeleitet für RSA-Funktionalität - Dynamischen PEM-Import in `UpdateContent` hinzugefügt
This commit is contained in:
34
DigitalData.Auth.Client/ClientPublicKey.cs
Normal file
34
DigitalData.Auth.Client/ClientPublicKey.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using DigitalData.Core.Abstractions.Security;
|
||||
using DigitalData.Core.Security.RSAKey;
|
||||
|
||||
namespace DigitalData.Auth.Client;
|
||||
|
||||
/// <summary>
|
||||
/// Represents a public RSA key, allowing dynamic updates and PEM import functionality.
|
||||
/// </summary>
|
||||
public class ClientPublicKey : RSAKeyBase, IAsymmetricPublicKey, IAsymmetricKey, IUniqueSecurityContext
|
||||
{
|
||||
public required string Issuer { get; init; }
|
||||
|
||||
public required string Audience { get; init; }
|
||||
|
||||
private string _content = string.Empty;
|
||||
|
||||
public override string Content
|
||||
{
|
||||
get
|
||||
{
|
||||
return _content;
|
||||
}
|
||||
init
|
||||
{
|
||||
UpdateContent(value);
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateContent(string content)
|
||||
{
|
||||
_content = content;
|
||||
RSA.ImportFromPem(content);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user