diff --git a/Core.Cerberos.Adapters/Adapters/PermissionAdapter.cs b/Core.Cerberos.Adapters/Adapters/PermissionAdapter.cs deleted file mode 100644 index 7499119..0000000 --- a/Core.Cerberos.Adapters/Adapters/PermissionAdapter.cs +++ /dev/null @@ -1,95 +0,0 @@ -// *********************************************************************** -// -// Heath -// -// *********************************************************************** - -using Core.Cerberos.Adapters.Common.Constants; -using Core.Cerberos.Adapters.Common.Enums; -using MongoDB.Bson; -using MongoDB.Bson.Serialization.Attributes; -using System.Text.Json.Serialization; - -namespace Core.Cerberos.Adapters -{ - /// - /// Adapter for representing a permission. - /// - public class PermissionAdapter - { - /// - /// Gets or sets the ID of the entity. - /// - [BsonId] - [BsonElement("_id")] - [BsonRepresentation(BsonType.ObjectId)] - [JsonPropertyName("id")] - public string Id { get; set; } = null!; - - /// - /// Gets or sets the name of the entity. - /// - [BsonElement("name")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("name")] - public string Name { get; set; } = null!; - - /// - /// Gets or sets the description of the entity. - /// - [BsonElement("description")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("description")] - public string? Description { get; set; } - - /// - /// Gets or sets the status of the entity object. - /// - [BsonElement("accessLevel")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("accessLevel")] - [JsonConverter(typeof(JsonStringEnumConverter))] - public AccessLevelEnum? AccessLevel { get; set; } = null!; - - /// - /// Gets or sets the date and time when the entity was created. - /// - [BsonElement("createdAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("createdAt")] - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; - - /// - /// Gets or sets the user who created the entity. - /// - [BsonElement("createdBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("createdBy")] - public string? CreatedBy { get; set; } - - /// - /// Gets or sets the date and time when the entity was last updated. - /// - [BsonElement("updatedAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("updatedAt")] - public DateTime? UpdatedAt { get; set; } = null; - - /// - /// Gets or sets the user who last updated the entity. - /// - [BsonElement("updatedBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("updatedBy")] - public string? UpdatedBy { get; set; } = null; - - /// - /// Gets or sets the status of the entity. - /// - [BsonElement("status")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("status")] - [JsonConverter(typeof(JsonStringEnumConverter))] - public StatusEnum Status { get; set; } = StatusEnum.Active; - } -} diff --git a/Core.Cerberos.Adapters.sln b/Core.Thalos.BuildingBlocks.sln similarity index 83% rename from Core.Cerberos.Adapters.sln rename to Core.Thalos.BuildingBlocks.sln index 34a1919..d3cba29 100644 --- a/Core.Cerberos.Adapters.sln +++ b/Core.Thalos.BuildingBlocks.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.10.34928.147 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Core.Cerberos.Adapters", "Core.Cerberos.Adapters\Core.Cerberos.Adapters.csproj", "{C902AB37-E6D1-4CE7-B271-0E3969C989F3}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Core.Thalos.BuildingBlocks", "Core.Thalos.BuildingBlocks\Core.Thalos.BuildingBlocks.csproj", "{C902AB37-E6D1-4CE7-B271-0E3969C989F3}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Core.Cerberos.Adapters/Adapters/Base/BaseAdapterResponse.cs b/Core.Thalos.BuildingBlocks/Adapters/Base/BaseAdapterResponse.cs similarity index 96% rename from Core.Cerberos.Adapters/Adapters/Base/BaseAdapterResponse.cs rename to Core.Thalos.BuildingBlocks/Adapters/Base/BaseAdapterResponse.cs index 5a67d10..aa41634 100644 --- a/Core.Cerberos.Adapters/Adapters/Base/BaseAdapterResponse.cs +++ b/Core.Thalos.BuildingBlocks/Adapters/Base/BaseAdapterResponse.cs @@ -5,7 +5,7 @@ using System.Text; using System.Text.Json; using System.Threading.Tasks; -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { public class BaseAdapterResponse { diff --git a/Core.Cerberos.Adapters/Adapters/ModuleAdapter.cs b/Core.Thalos.BuildingBlocks/Adapters/ModuleAdapter.cs similarity index 58% rename from Core.Cerberos.Adapters/Adapters/ModuleAdapter.cs rename to Core.Thalos.BuildingBlocks/Adapters/ModuleAdapter.cs index 717bc20..c82e9eb 100644 --- a/Core.Cerberos.Adapters/Adapters/ModuleAdapter.cs +++ b/Core.Thalos.BuildingBlocks/Adapters/ModuleAdapter.cs @@ -1,20 +1,20 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Common.Enums; +using Core.Thalos.Adapters.Common.Enums; using MongoDB.Bson; using MongoDB.Bson.Serialization.Attributes; using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { /// /// Adapter for representing a module. /// - public class ModuleAdapter + public class ModuleAdapter : Document { /// /// Gets or sets the ID of the module. @@ -73,46 +73,5 @@ namespace Core.Cerberos.Adapters [JsonPropertyName("application")] [JsonConverter(typeof(JsonStringEnumConverter))] public ApplicationsEnum? Application { get; set; } = null!; - - /// - /// Gets or sets the date and time when the module was created. - /// - [BsonElement("createdAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("createdAt")] - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; - - /// - /// Gets or sets the user who created the module. - /// - [BsonElement("createdBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("createdBy")] - public string? CreatedBy { get; set; } - - /// - /// Gets or sets the date and time when the module was last updated. - /// - [BsonElement("updatedAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("updatedAt")] - public DateTime? UpdatedAt { get; set; } = null; - - /// - /// Gets or sets the user who last updated the module. - /// - [BsonElement("updatedBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("updatedBy")] - public string? UpdatedBy { get; set; } = null; - - /// - /// Gets or sets the status of the module. - /// - [BsonElement("status")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("status")] - [JsonConverter(typeof(JsonStringEnumConverter))] - public StatusEnum Status { get; set; } = StatusEnum.Active; } } diff --git a/Core.Thalos.BuildingBlocks/Adapters/PermissionAdapter.cs b/Core.Thalos.BuildingBlocks/Adapters/PermissionAdapter.cs new file mode 100644 index 0000000..a795e18 --- /dev/null +++ b/Core.Thalos.BuildingBlocks/Adapters/PermissionAdapter.cs @@ -0,0 +1,54 @@ +// *********************************************************************** +// +// AgileWebs +// +// *********************************************************************** + +using Core.Thalos.Adapters.Common.Constants; +using Core.Thalos.Adapters.Common.Enums; +using MongoDB.Bson; +using MongoDB.Bson.Serialization.Attributes; +using System.Text.Json.Serialization; + +namespace Core.Thalos.Adapters +{ + /// + /// Adapter for representing a permission. + /// + public class PermissionAdapter : Document + { + /// + /// Gets or sets the ID of the entity. + /// + [BsonId] + [BsonElement("_id")] + [BsonRepresentation(BsonType.ObjectId)] + [JsonPropertyName("id")] + public string Id { get; set; } = null!; + + /// + /// Gets or sets the name of the entity. + /// + [BsonElement("name")] + [BsonRepresentation(BsonType.String)] + [JsonPropertyName("name")] + public string Name { get; set; } = null!; + + /// + /// Gets or sets the description of the entity. + /// + [BsonElement("description")] + [BsonRepresentation(BsonType.String)] + [JsonPropertyName("description")] + public string? Description { get; set; } + + /// + /// Gets or sets the status of the entity object. + /// + [BsonElement("accessLevel")] + [BsonRepresentation(BsonType.String)] + [JsonPropertyName("accessLevel")] + [JsonConverter(typeof(JsonStringEnumConverter))] + public AccessLevelEnum? AccessLevel { get; set; } = null!; + } +} diff --git a/Core.Cerberos.Adapters/Adapters/RoleAdapter.cs b/Core.Thalos.BuildingBlocks/Adapters/RoleAdapter.cs similarity index 54% rename from Core.Cerberos.Adapters/Adapters/RoleAdapter.cs rename to Core.Thalos.BuildingBlocks/Adapters/RoleAdapter.cs index d2c03c7..37ba5c6 100644 --- a/Core.Cerberos.Adapters/Adapters/RoleAdapter.cs +++ b/Core.Thalos.BuildingBlocks/Adapters/RoleAdapter.cs @@ -1,20 +1,20 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Common.Enums; +using Core.Thalos.Adapters.Common.Enums; using MongoDB.Bson; using MongoDB.Bson.Serialization.Attributes; using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { /// /// Adapter representing a role. /// - public class RoleAdapter + public class RoleAdapter : Document { /// /// Gets or sets the unique identifier of the role. @@ -62,46 +62,5 @@ namespace Core.Cerberos.Adapters [BsonElement("permissions")] [JsonPropertyName("permissions")] public string[] Permissions { get; set; } = null!; - - /// - /// Gets or sets the date and time when the entity was created. - /// - [BsonElement("createdAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("createdAt")] - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; - - /// - /// Gets or sets the user who created the entity. - /// - [BsonElement("createdBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("createdBy")] - public string? CreatedBy { get; set; } - - /// - /// Gets or sets the date and time when the entity was last updated. - /// - [BsonElement("updatedAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("updatedAt")] - public DateTime? UpdatedAt { get; set; } = null; - - /// - /// Gets or sets the user who last updated the entity. - /// - [BsonElement("updatedBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("updatedBy")] - public string? UpdatedBy { get; set; } = null; - - /// - /// Gets or sets the status of the entity. - /// - [BsonElement("status")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("status")] - [JsonConverter(typeof(JsonStringEnumConverter))] - public StatusEnum Status { get; set; } = StatusEnum.Active; } } diff --git a/Core.Cerberos.Adapters/Adapters/TokenAdapter.cs b/Core.Thalos.BuildingBlocks/Adapters/TokenAdapter.cs similarity index 77% rename from Core.Cerberos.Adapters/Adapters/TokenAdapter.cs rename to Core.Thalos.BuildingBlocks/Adapters/TokenAdapter.cs index b7f5b51..665d20c 100644 --- a/Core.Cerberos.Adapters/Adapters/TokenAdapter.cs +++ b/Core.Thalos.BuildingBlocks/Adapters/TokenAdapter.cs @@ -1,10 +1,10 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { public class TokenAdapter { @@ -13,6 +13,6 @@ namespace Core.Cerberos.Adapters public RoleAdapter? Role { get; set; } public IEnumerable? Permissions { get; set; } - public IEnumerable? Modules { get; set; } + public IEnumerable Modules { get; set; } = null!; } } diff --git a/Core.Cerberos.Adapters/Adapters/UserAdapter.cs b/Core.Thalos.BuildingBlocks/Adapters/UserAdapter.cs similarity index 71% rename from Core.Cerberos.Adapters/Adapters/UserAdapter.cs rename to Core.Thalos.BuildingBlocks/Adapters/UserAdapter.cs index 9afda00..e1c4158 100644 --- a/Core.Cerberos.Adapters/Adapters/UserAdapter.cs +++ b/Core.Thalos.BuildingBlocks/Adapters/UserAdapter.cs @@ -1,19 +1,19 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Common.Enums; +using Core.Thalos.Adapters.Common.Enums; using MongoDB.Bson; using MongoDB.Bson.Serialization.Attributes; using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { /// /// Adapter representing a user. /// - public class UserAdapter : BaseAdapterResponse + public class UserAdapter : Document { /// /// Gets or sets the unique identifier of the user. @@ -126,46 +126,5 @@ namespace Core.Cerberos.Adapters [BsonRepresentation(BsonType.String)] [JsonPropertyName("token")] public string? Token { get; set; } = null; - - /// - /// Gets or sets the date and time when the entity was created. - /// - [BsonElement("createdAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("createdAt")] - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; - - /// - /// Gets or sets the user who created the entity. - /// - [BsonElement("createdBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("createdBy")] - public string? CreatedBy { get; set; } - - /// - /// Gets or sets the date and time when the entity was last updated. - /// - [BsonElement("updatedAt")] - [BsonRepresentation(BsonType.DateTime)] - [JsonPropertyName("updatedAt")] - public DateTime? UpdatedAt { get; set; } = null; - - /// - /// Gets or sets the user who last updated the entity. - /// - [BsonElement("updatedBy")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("updatedBy")] - public string? UpdatedBy { get; set; } = null; - - /// - /// Gets or sets the status of the entity. - /// - [BsonElement("status")] - [BsonRepresentation(BsonType.String)] - [JsonPropertyName("status")] - [JsonConverter(typeof(JsonStringEnumConverter))] - public StatusEnum Status { get; set; } = StatusEnum.Active; } } diff --git a/Core.Cerberos.Adapters/Attributes/Permission.cs b/Core.Thalos.BuildingBlocks/Attributes/Permission.cs similarity index 78% rename from Core.Cerberos.Adapters/Attributes/Permission.cs rename to Core.Thalos.BuildingBlocks/Attributes/Permission.cs index a531b52..5ec6723 100644 --- a/Core.Cerberos.Adapters/Attributes/Permission.cs +++ b/Core.Thalos.BuildingBlocks/Attributes/Permission.cs @@ -1,4 +1,4 @@ -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { public class Permission { diff --git a/Core.Cerberos.Adapters/Attributes/PermissionAttribute.cs b/Core.Thalos.BuildingBlocks/Attributes/PermissionAttribute.cs similarity index 98% rename from Core.Cerberos.Adapters/Attributes/PermissionAttribute.cs rename to Core.Thalos.BuildingBlocks/Attributes/PermissionAttribute.cs index 7db7cc5..dce03f9 100644 --- a/Core.Cerberos.Adapters/Attributes/PermissionAttribute.cs +++ b/Core.Thalos.BuildingBlocks/Attributes/PermissionAttribute.cs @@ -2,7 +2,7 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; -namespace Core.Cerberos.Adapters.Attributes +namespace Core.Thalos.Adapters.Attributes { /// /// Custom authorization attribute that checks if the user has any of the required permissions. diff --git a/Core.Cerberos.Adapters/Common/Constants/AccessLevelEnum.cs b/Core.Thalos.BuildingBlocks/Common/Constants/AccessLevelEnum.cs similarity index 92% rename from Core.Cerberos.Adapters/Common/Constants/AccessLevelEnum.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/AccessLevelEnum.cs index da9745e..efee073 100644 --- a/Core.Cerberos.Adapters/Common/Constants/AccessLevelEnum.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/AccessLevelEnum.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Specifies different access level for a permission. diff --git a/Core.Cerberos.Adapters/Common/Constants/AzureAd.cs b/Core.Thalos.BuildingBlocks/Common/Constants/AzureAd.cs similarity index 95% rename from Core.Cerberos.Adapters/Common/Constants/AzureAd.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/AzureAd.cs index 9e739b6..f93804e 100644 --- a/Core.Cerberos.Adapters/Common/Constants/AzureAd.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/AzureAd.cs @@ -1,9 +1,9 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for Azure Active Directory. diff --git a/Core.Cerberos.Adapters/Common/Constants/Claims.cs b/Core.Thalos.BuildingBlocks/Common/Constants/Claims.cs similarity index 96% rename from Core.Cerberos.Adapters/Common/Constants/Claims.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/Claims.cs index e1977aa..410edab 100644 --- a/Core.Cerberos.Adapters/Common/Constants/Claims.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/Claims.cs @@ -1,9 +1,9 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for claims used in JWT tokens. diff --git a/Core.Cerberos.Adapters/Common/Constants/CollectionNames.cs b/Core.Thalos.BuildingBlocks/Common/Constants/CollectionNames.cs similarity index 91% rename from Core.Cerberos.Adapters/Common/Constants/CollectionNames.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/CollectionNames.cs index f611d40..ce4d39b 100644 --- a/Core.Cerberos.Adapters/Common/Constants/CollectionNames.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/CollectionNames.cs @@ -1,4 +1,4 @@ -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { public static class CollectionNames { diff --git a/Core.Cerberos.Adapters/Common/Constants/EnvironmentVariables.cs b/Core.Thalos.BuildingBlocks/Common/Constants/EnvironmentVariables.cs similarity index 89% rename from Core.Cerberos.Adapters/Common/Constants/EnvironmentVariables.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/EnvironmentVariables.cs index d58e337..85a1fc1 100644 --- a/Core.Cerberos.Adapters/Common/Constants/EnvironmentVariables.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/EnvironmentVariables.cs @@ -1,10 +1,10 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants of the environment variables for this service. diff --git a/Core.Cerberos.Adapters/Common/Constants/KeyVaultConfiguration.cs b/Core.Thalos.BuildingBlocks/Common/Constants/KeyVaultConfiguration.cs similarity index 93% rename from Core.Cerberos.Adapters/Common/Constants/KeyVaultConfiguration.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/KeyVaultConfiguration.cs index c09ec85..ea6b590 100644 --- a/Core.Cerberos.Adapters/Common/Constants/KeyVaultConfiguration.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/KeyVaultConfiguration.cs @@ -1,9 +1,9 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for Key Vault configuration. diff --git a/Core.Cerberos.Adapters/Common/Constants/MimeTypes.cs b/Core.Thalos.BuildingBlocks/Common/Constants/MimeTypes.cs similarity index 98% rename from Core.Cerberos.Adapters/Common/Constants/MimeTypes.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/MimeTypes.cs index d9bffc7..97e79ee 100644 --- a/Core.Cerberos.Adapters/Common/Constants/MimeTypes.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/MimeTypes.cs @@ -6,7 +6,7 @@ using System.Globalization; -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for the mime types. diff --git a/Core.Cerberos.Adapters/Common/Constants/Routes.cs b/Core.Thalos.BuildingBlocks/Common/Constants/Routes.cs similarity index 98% rename from Core.Cerberos.Adapters/Common/Constants/Routes.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/Routes.cs index 440aac9..d6628b1 100644 --- a/Core.Cerberos.Adapters/Common/Constants/Routes.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/Routes.cs @@ -1,10 +1,10 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants of the routes of this service. diff --git a/Core.Cerberos.Adapters/Common/Constants/Schemes.cs b/Core.Thalos.BuildingBlocks/Common/Constants/Schemes.cs similarity index 66% rename from Core.Cerberos.Adapters/Common/Constants/Schemes.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/Schemes.cs index 67e77e5..b0e176b 100644 --- a/Core.Cerberos.Adapters/Common/Constants/Schemes.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/Schemes.cs @@ -1,4 +1,4 @@ -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for schemes. @@ -6,9 +6,9 @@ public class Schemes { /// - /// The heath scheme. + /// The default scheme. /// - public const string HeathScheme = "HeathScheme"; + public const string DefaultScheme = "DefaultScheme"; /// /// The azure scheme. diff --git a/Core.Cerberos.Adapters/Common/Constants/Secrets.cs b/Core.Thalos.BuildingBlocks/Common/Constants/Secrets.cs similarity index 83% rename from Core.Cerberos.Adapters/Common/Constants/Secrets.cs rename to Core.Thalos.BuildingBlocks/Common/Constants/Secrets.cs index a3fc7c7..918aab6 100644 --- a/Core.Cerberos.Adapters/Common/Constants/Secrets.cs +++ b/Core.Thalos.BuildingBlocks/Common/Constants/Secrets.cs @@ -1,9 +1,9 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Common.Constants +namespace Core.Thalos.Adapters.Common.Constants { /// /// Constants for secrets in azure key vault. @@ -49,10 +49,10 @@ namespace Core.Cerberos.Adapters.Common.Constants public const string AzureADTenantId = "B2C:TenantId"; public const string AzureADClientId = "B2C:ClientId"; public const string AzureADClientSecret = "B2C:ClientSecret"; - public const string HeathCerberosAppAuthorizationUrl = "Swagger:AuthorizationUri"; - public const string HeathCerberosAppTokenUrl = "Swagger:TokenUri"; - public const string HeathCerberosAppClientId = "Swagger:ClientId"; - public const string HeathCerberosAppScope = "Swagger:Scope"; + public const string ThalosAppAuthorizationUrl = "Swagger:AuthorizationUri"; + public const string ThalosAppTokenUrl = "Swagger:TokenUri"; + public const string ThalosAppClientId = "Swagger:ClientId"; + public const string ThalosAppScope = "Swagger:Scope"; public const string PrivateKey = "B2C:JwtIssuerOptions:TokenPrivateKey"; public const string PublicKey = "B2C:JwtIssuerOptions:TokenPublicKey"; } diff --git a/Core.Cerberos.Adapters/Common/Enums/ApplicationsEnum.cs b/Core.Thalos.BuildingBlocks/Common/Enums/ApplicationsEnum.cs similarity index 94% rename from Core.Cerberos.Adapters/Common/Enums/ApplicationsEnum.cs rename to Core.Thalos.BuildingBlocks/Common/Enums/ApplicationsEnum.cs index c51bf6f..045b391 100644 --- a/Core.Cerberos.Adapters/Common/Enums/ApplicationsEnum.cs +++ b/Core.Thalos.BuildingBlocks/Common/Enums/ApplicationsEnum.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters.Common.Enums +namespace Core.Thalos.Adapters.Common.Enums { /// /// Defines the applications associated with the role. diff --git a/Core.Cerberos.Adapters/Common/Enums/StatusEnum.cs b/Core.Thalos.BuildingBlocks/Common/Enums/StatusEnum.cs similarity index 92% rename from Core.Cerberos.Adapters/Common/Enums/StatusEnum.cs rename to Core.Thalos.BuildingBlocks/Common/Enums/StatusEnum.cs index 213cad4..1e70864 100644 --- a/Core.Cerberos.Adapters/Common/Enums/StatusEnum.cs +++ b/Core.Thalos.BuildingBlocks/Common/Enums/StatusEnum.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters.Common.Enums +namespace Core.Thalos.Adapters.Common.Enums { /// /// Defines the status of an entity. diff --git a/Core.Cerberos.Adapters/Common/SchemaFilters/EnumArrayJsonConverter.cs b/Core.Thalos.BuildingBlocks/Common/SchemaFilters/EnumArrayJsonConverter.cs similarity index 100% rename from Core.Cerberos.Adapters/Common/SchemaFilters/EnumArrayJsonConverter.cs rename to Core.Thalos.BuildingBlocks/Common/SchemaFilters/EnumArrayJsonConverter.cs diff --git a/Core.Cerberos.Adapters/Common/SchemaFilters/EnumSchemaFilter.cs b/Core.Thalos.BuildingBlocks/Common/SchemaFilters/EnumSchemaFilter.cs similarity index 98% rename from Core.Cerberos.Adapters/Common/SchemaFilters/EnumSchemaFilter.cs rename to Core.Thalos.BuildingBlocks/Common/SchemaFilters/EnumSchemaFilter.cs index cdc9480..1839452 100644 --- a/Core.Cerberos.Adapters/Common/SchemaFilters/EnumSchemaFilter.cs +++ b/Core.Thalos.BuildingBlocks/Common/SchemaFilters/EnumSchemaFilter.cs @@ -1,6 +1,6 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** diff --git a/Core.Cerberos.Adapters/Contracts/ITokenProvider.cs b/Core.Thalos.BuildingBlocks/Contracts/ITokenProvider.cs similarity index 88% rename from Core.Cerberos.Adapters/Contracts/ITokenProvider.cs rename to Core.Thalos.BuildingBlocks/Contracts/ITokenProvider.cs index 2eaf533..14c4564 100644 --- a/Core.Cerberos.Adapters/Contracts/ITokenProvider.cs +++ b/Core.Thalos.BuildingBlocks/Contracts/ITokenProvider.cs @@ -1,10 +1,10 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -namespace Core.Cerberos.Adapters.Contracts +namespace Core.Thalos.Adapters.Contracts { /// /// Interface for token provider. diff --git a/Core.Cerberos.Adapters/Contracts/ITokenService.cs b/Core.Thalos.BuildingBlocks/Contracts/ITokenService.cs similarity index 85% rename from Core.Cerberos.Adapters/Contracts/ITokenService.cs rename to Core.Thalos.BuildingBlocks/Contracts/ITokenService.cs index b68609a..4c50048 100644 --- a/Core.Cerberos.Adapters/Contracts/ITokenService.cs +++ b/Core.Thalos.BuildingBlocks/Contracts/ITokenService.cs @@ -1,13 +1,13 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; -namespace Core.Cerberos.Adapters.Contracts +namespace Core.Thalos.Adapters.Contracts { /// /// Interface for authenticacion service. @@ -17,7 +17,7 @@ namespace Core.Cerberos.Adapters.Contracts /// /// Refreshes the access token. /// - string GenerateAccessToken(TokenAdapter adapter); + (string, IEnumerable) GenerateAccessToken(TokenAdapter adapter); /// /// Refreshes the access token. diff --git a/Core.Cerberos.Adapters/Core.Cerberos.Adapters.csproj b/Core.Thalos.BuildingBlocks/Core.Thalos.BuildingBlocks.csproj similarity index 71% rename from Core.Cerberos.Adapters/Core.Cerberos.Adapters.csproj rename to Core.Thalos.BuildingBlocks/Core.Thalos.BuildingBlocks.csproj index 5bcf6c6..fdc8f35 100644 --- a/Core.Cerberos.Adapters/Core.Cerberos.Adapters.csproj +++ b/Core.Thalos.BuildingBlocks/Core.Thalos.BuildingBlocks.csproj @@ -12,19 +12,20 @@ + - - - - - - - - - + + + + + + + + + - - + + diff --git a/Core.Cerberos.Adapters/Extensions/AuthenticationExtension.cs b/Core.Thalos.BuildingBlocks/Extensions/AuthenticationExtension.cs similarity index 93% rename from Core.Cerberos.Adapters/Extensions/AuthenticationExtension.cs rename to Core.Thalos.BuildingBlocks/Extensions/AuthenticationExtension.cs index 315c205..ced7b87 100644 --- a/Core.Cerberos.Adapters/Extensions/AuthenticationExtension.cs +++ b/Core.Thalos.BuildingBlocks/Extensions/AuthenticationExtension.cs @@ -1,14 +1,14 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Common.Constants; -using Core.Cerberos.Adapters.Contracts; -using Core.Cerberos.Adapters.Handlers; -using Core.Cerberos.Adapters.Options; -using Core.Cerberos.Adapters.Services; +using Core.Thalos.Adapters.Common.Constants; +using Core.Thalos.Adapters.Contracts; +using Core.Thalos.Adapters.Handlers; +using Core.Thalos.Adapters.Options; +using Core.Thalos.Adapters.Services; using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.AspNetCore.Authorization; using Microsoft.Extensions.Configuration; @@ -17,7 +17,7 @@ using Microsoft.Identity.Web; using Microsoft.IdentityModel.Tokens; using System.Security.Cryptography; -namespace Core.Cerberos.Adapters.Extensions +namespace Core.Thalos.Adapters.Extensions { /// /// Extension methods for configuring authentication with various Azure AD setups. @@ -68,7 +68,7 @@ namespace Core.Cerberos.Adapters.Extensions throw new InvalidOperationException("JwtIssuerOptions are not configured correctly."); services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) - .AddJwtBearer(Schemes.HeathScheme, x => + .AddJwtBearer(Schemes.DefaultScheme, x => { x.TokenValidationParameters = new TokenValidationParameters { diff --git a/Core.Cerberos.Adapters/Extensions/SwaggerExtensions.cs b/Core.Thalos.BuildingBlocks/Extensions/SwaggerExtensions.cs similarity index 94% rename from Core.Cerberos.Adapters/Extensions/SwaggerExtensions.cs rename to Core.Thalos.BuildingBlocks/Extensions/SwaggerExtensions.cs index ec311bb..d4b7ecd 100644 --- a/Core.Cerberos.Adapters/Extensions/SwaggerExtensions.cs +++ b/Core.Thalos.BuildingBlocks/Extensions/SwaggerExtensions.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using Asp.Versioning.ApiExplorer; -using Core.Cerberos.Adapters.Common.Constants; -using Core.Cerberos.Adapters.Extensions; +using Core.Thalos.Adapters.Common.Constants; +using Core.Thalos.Adapters.Extensions; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; @@ -16,7 +16,7 @@ using Microsoft.OpenApi.Models; using Swashbuckle.AspNetCore.SwaggerGen; using Swashbuckle.AspNetCore.SwaggerUI; -namespace Core.Cerberos.Adapters.Extensions +namespace Core.Thalos.Adapters.Extensions { /// /// Extension methods for configuring Swagger documentation and UI. @@ -53,11 +53,11 @@ namespace Core.Cerberos.Adapters.Extensions { AuthorizationCode = new OpenApiOAuthFlow { - AuthorizationUrl = new Uri(authSettings.HeathCerberosAppAuthorizationUrl ?? string.Empty), - TokenUrl = new Uri(authSettings.HeathCerberosAppTokenUrl ?? string.Empty), + AuthorizationUrl = new Uri(authSettings.ThalosAppAuthorizationUrl ?? string.Empty), + TokenUrl = new Uri(authSettings.ThalosAppTokenUrl ?? string.Empty), Scopes = new Dictionary { - { authSettings.HeathCerberosAppScope ?? string.Empty, "Access API as User" } + { authSettings.ThalosAppScope ?? string.Empty, "Access API as User" } } } } @@ -70,7 +70,7 @@ namespace Core.Cerberos.Adapters.Extensions { Reference = new OpenApiReference { Type = ReferenceType.SecurityScheme, Id = "oauth2" } }, - new[] { authSettings.HeathCerberosAppScope } + new[] { authSettings.ThalosAppScope } } }); @@ -134,7 +134,7 @@ namespace Core.Cerberos.Adapters.Extensions app.UseSwaggerUI(options => { options.SwaggerEndpoint("/swagger/v1/swagger.json", "Custom Auth API with Azure AD v1"); - options.OAuthClientId(authSettings.HeathCerberosAppClientId); + options.OAuthClientId(authSettings.ThalosAppClientId); options.OAuthUsePkce(); options.OAuthScopeSeparator(" "); }); diff --git a/Core.Cerberos.Adapters/Extensions/TelemetryExtensions.cs b/Core.Thalos.BuildingBlocks/Extensions/TelemetryExtensions.cs similarity index 94% rename from Core.Cerberos.Adapters/Extensions/TelemetryExtensions.cs rename to Core.Thalos.BuildingBlocks/Extensions/TelemetryExtensions.cs index 816fa0c..9eb757c 100644 --- a/Core.Cerberos.Adapters/Extensions/TelemetryExtensions.cs +++ b/Core.Thalos.BuildingBlocks/Extensions/TelemetryExtensions.cs @@ -4,7 +4,7 @@ using OpenTelemetry.Metrics; using OpenTelemetry.Resources; using OpenTelemetry.Trace; -namespace Core.Cerberos.Adapters.Extensions +namespace Core.Thalos.Adapters.Extensions { public static class TelemetryExtensions { diff --git a/Core.Cerberos.Adapters/Extensions/TrackingMechanismExtension.cs b/Core.Thalos.BuildingBlocks/Extensions/TrackingMechanismExtension.cs similarity index 95% rename from Core.Cerberos.Adapters/Extensions/TrackingMechanismExtension.cs rename to Core.Thalos.BuildingBlocks/Extensions/TrackingMechanismExtension.cs index 9dc847f..ecda0a5 100644 --- a/Core.Cerberos.Adapters/Extensions/TrackingMechanismExtension.cs +++ b/Core.Thalos.BuildingBlocks/Extensions/TrackingMechanismExtension.cs @@ -1,6 +1,6 @@ using Microsoft.AspNetCore.Http; -namespace Core.Cerberos.Adapters.Extensions +namespace Core.Thalos.Adapters.Extensions { public sealed class TrackingMechanismExtension : DelegatingHandler { diff --git a/Core.Cerberos.Adapters/Handlers/Adapters/PermissionsAuthorizationAdapter.cs b/Core.Thalos.BuildingBlocks/Handlers/Adapters/PermissionsAuthorizationAdapter.cs similarity index 85% rename from Core.Cerberos.Adapters/Handlers/Adapters/PermissionsAuthorizationAdapter.cs rename to Core.Thalos.BuildingBlocks/Handlers/Adapters/PermissionsAuthorizationAdapter.cs index 82ea008..1a057b9 100644 --- a/Core.Cerberos.Adapters/Handlers/Adapters/PermissionsAuthorizationAdapter.cs +++ b/Core.Thalos.BuildingBlocks/Handlers/Adapters/PermissionsAuthorizationAdapter.cs @@ -1,6 +1,6 @@ using Microsoft.AspNetCore.Authorization; -namespace Core.Cerberos.Adapters.Handlers.Adapters +namespace Core.Thalos.Adapters.Handlers.Adapters { public class PermissionsAuthorizationAdapter : IAuthorizationRequirement { diff --git a/Core.Cerberos.Adapters/Handlers/AuthenticatedHttpClientHandler.cs b/Core.Thalos.BuildingBlocks/Handlers/AuthenticatedHttpClientHandler.cs similarity index 91% rename from Core.Cerberos.Adapters/Handlers/AuthenticatedHttpClientHandler.cs rename to Core.Thalos.BuildingBlocks/Handlers/AuthenticatedHttpClientHandler.cs index dcf7231..e6b5517 100644 --- a/Core.Cerberos.Adapters/Handlers/AuthenticatedHttpClientHandler.cs +++ b/Core.Thalos.BuildingBlocks/Handlers/AuthenticatedHttpClientHandler.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Contracts; +using Core.Thalos.Adapters.Contracts; -namespace Core.Cerberos.Adapters.Handlers +namespace Core.Thalos.Adapters.Handlers { /// /// Class to inject the token in all requests. diff --git a/Core.Cerberos.Adapters/Handlers/PermissionsAuthorizationHandler.cs b/Core.Thalos.BuildingBlocks/Handlers/PermissionsAuthorizationHandler.cs similarity index 85% rename from Core.Cerberos.Adapters/Handlers/PermissionsAuthorizationHandler.cs rename to Core.Thalos.BuildingBlocks/Handlers/PermissionsAuthorizationHandler.cs index cf15512..c4ef719 100644 --- a/Core.Cerberos.Adapters/Handlers/PermissionsAuthorizationHandler.cs +++ b/Core.Thalos.BuildingBlocks/Handlers/PermissionsAuthorizationHandler.cs @@ -1,7 +1,7 @@ -using Core.Cerberos.Adapters.Handlers.Adapters; +using Core.Thalos.Adapters.Handlers.Adapters; using Microsoft.AspNetCore.Authorization; -namespace Core.Cerberos.Adapters.Handlers +namespace Core.Thalos.Adapters.Handlers { public class PermissionsAuthorizationHandler : AuthorizationHandler { diff --git a/Core.Cerberos.Adapters/Helpers/AuthHelper.cs b/Core.Thalos.BuildingBlocks/Helpers/AuthHelper.cs similarity index 74% rename from Core.Cerberos.Adapters/Helpers/AuthHelper.cs rename to Core.Thalos.BuildingBlocks/Helpers/AuthHelper.cs index f6ca9fd..ecddcfb 100644 --- a/Core.Cerberos.Adapters/Helpers/AuthHelper.cs +++ b/Core.Thalos.BuildingBlocks/Helpers/AuthHelper.cs @@ -1,11 +1,11 @@ using Azure.Identity; -using Core.Cerberos.Adapters.Common.Constants; +using Core.Thalos.Adapters.Common.Constants; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.AzureAppConfiguration; using Microsoft.Extensions.Logging; -namespace Core.Cerberos.Adapters.Helpers +namespace Core.Thalos.Adapters.Helpers { public static class AuthHelper { @@ -25,7 +25,7 @@ namespace Core.Cerberos.Adapters.Helpers throw new ArgumentException("The app configuration is missing"); options.Connect(new Uri(endpoint), new DefaultAzureCredential()) - .Select(KeyFilter.Any, "cerberos_common") + .Select(KeyFilter.Any, "thalos_common") .Select(KeyFilter.Any, appConfigLabel); options.ConfigureKeyVault(keyVaultOptions => @@ -40,10 +40,10 @@ namespace Core.Cerberos.Adapters.Helpers AzureADTenantId = builder.Configuration.GetSection(Secrets.AzureADTenantId).Value, AzureADClientId = builder.Configuration.GetSection(Secrets.AzureADClientId).Value, AzureADClientSecret = builder.Configuration.GetSection(Secrets.AzureADClientSecret).Value, - HeathCerberosAppAuthorizationUrl = builder.Configuration.GetSection(Secrets.HeathCerberosAppAuthorizationUrl).Value, - HeathCerberosAppTokenUrl = builder.Configuration.GetSection(Secrets.HeathCerberosAppTokenUrl).Value, - HeathCerberosAppClientId = builder.Configuration.GetSection(Secrets.HeathCerberosAppClientId).Value, - HeathCerberosAppScope = builder.Configuration.GetSection(Secrets.HeathCerberosAppScope).Value, + ThalosAppAuthorizationUrl = builder.Configuration.GetSection(Secrets.ThalosAppAuthorizationUrl).Value, + ThalosAppTokenUrl = builder.Configuration.GetSection(Secrets.ThalosAppTokenUrl).Value, + ThalosAppClientId = builder.Configuration.GetSection(Secrets.ThalosAppClientId).Value, + ThalosAppScope = builder.Configuration.GetSection(Secrets.ThalosAppScope).Value, PrivateKey = builder.Configuration.GetSection(Secrets.PrivateKey).Value, PublicKey = builder.Configuration.GetSection(Secrets.PublicKey).Value, }; diff --git a/Core.Cerberos.Adapters/Helpers/RsaHelper.cs b/Core.Thalos.BuildingBlocks/Helpers/RsaHelper.cs similarity index 94% rename from Core.Cerberos.Adapters/Helpers/RsaHelper.cs rename to Core.Thalos.BuildingBlocks/Helpers/RsaHelper.cs index 1cd296c..bb849fc 100644 --- a/Core.Cerberos.Adapters/Helpers/RsaHelper.cs +++ b/Core.Thalos.BuildingBlocks/Helpers/RsaHelper.cs @@ -1,6 +1,6 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using Org.BouncyCastle.Crypto; @@ -10,7 +10,7 @@ using Org.BouncyCastle.Security; using System.Security.Cryptography; using System.Text; -namespace Core.Cerberos.Adapters.Helpers +namespace Core.Thalos.Adapters.Helpers { /// /// Handles all methods related to RSA encryption"/>. @@ -62,7 +62,7 @@ namespace Core.Cerberos.Adapters.Helpers /// The private key. private RSACryptoServiceProvider GetPrivateKeyFromPemFile() { - using (TextReader privateKeyTextReader = new StringReader(File.ReadAllText(Path.Combine(exeDirectory, "HeathPrivateKey.pem")))) + using (TextReader privateKeyTextReader = new StringReader(File.ReadAllText(Path.Combine(exeDirectory, "PrivateKey.pem")))) { AsymmetricCipherKeyPair readKeyPair = (AsymmetricCipherKeyPair)new PemReader(privateKeyTextReader).ReadObject(); @@ -79,7 +79,7 @@ namespace Core.Cerberos.Adapters.Helpers /// The public key. public RSACryptoServiceProvider GetPublicKeyFromPemFile() { - using (TextReader publicKeyTextReader = new StringReader(File.ReadAllText(Path.Combine(exeDirectory, "HeathPublicKey.pem")))) + using (TextReader publicKeyTextReader = new StringReader(File.ReadAllText(Path.Combine(exeDirectory, "PublicKey.pem")))) { RsaKeyParameters publicKeyParam = (RsaKeyParameters)new PemReader(publicKeyTextReader).ReadObject(); diff --git a/Core.Cerberos.Adapters/Options/JwtIssuerOptions.cs b/Core.Thalos.BuildingBlocks/Options/JwtIssuerOptions.cs similarity index 98% rename from Core.Cerberos.Adapters/Options/JwtIssuerOptions.cs rename to Core.Thalos.BuildingBlocks/Options/JwtIssuerOptions.cs index d103d15..470b856 100644 --- a/Core.Cerberos.Adapters/Options/JwtIssuerOptions.cs +++ b/Core.Thalos.BuildingBlocks/Options/JwtIssuerOptions.cs @@ -1,6 +1,6 @@ using Microsoft.IdentityModel.Tokens; -namespace Core.Cerberos.Adapters.Options +namespace Core.Thalos.Adapters.Options { /// /// JWT token Issuer options (used for JWT Factory) diff --git a/Core.Cerberos.Adapters/Services/TokenService.cs b/Core.Thalos.BuildingBlocks/Services/TokenService.cs similarity index 87% rename from Core.Cerberos.Adapters/Services/TokenService.cs rename to Core.Thalos.BuildingBlocks/Services/TokenService.cs index 937fb4c..c268d14 100644 --- a/Core.Cerberos.Adapters/Services/TokenService.cs +++ b/Core.Thalos.BuildingBlocks/Services/TokenService.cs @@ -1,11 +1,11 @@ // *********************************************************************** -// -// Heath +// +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Common.Constants; -using Core.Cerberos.Adapters.Contracts; -using Core.Cerberos.Adapters.Options; +using Core.Thalos.Adapters.Common.Constants; +using Core.Thalos.Adapters.Contracts; +using Core.Thalos.Adapters.Options; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Configuration; @@ -16,7 +16,7 @@ using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using System.Text.Json; -namespace Core.Cerberos.Adapters.Services +namespace Core.Thalos.Adapters.Services { /// /// Service responsible for manage authenticacion. @@ -74,7 +74,7 @@ namespace Core.Cerberos.Adapters.Services /// /// The user data. /// The user DTO with the generated token. - public string GenerateAccessToken(TokenAdapter adapter) + public (string, IEnumerable) GenerateAccessToken(TokenAdapter adapter) { @@ -95,9 +95,6 @@ namespace Core.Cerberos.Adapters.Services new Claim(Claims.Role, adapter?.Role?.Name ?? string.Empty), new Claim(Claims.RoleId, adapter?.Role?.Id ?? string.Empty), new Claim(Claims.Applications, JsonSerializer.Serialize(adapter?.Role?.Applications), JsonClaimValueTypes.JsonArray), - new Claim(Claims.Modules, JsonSerializer.Serialize(adapter?.Modules?.Select(m => new { m.Name, m.Application, m.Route, m.Icon, m.Order }), jsonOptions), JsonClaimValueTypes.JsonArray), - new Claim(Claims.Companies, JsonSerializer.Serialize(adapter?.User?.Companies), JsonClaimValueTypes.JsonArray), - new Claim(Claims.Projects, JsonSerializer.Serialize(adapter?.User?.Projects), JsonClaimValueTypes.JsonArray), new Claim(Claims.Permissions, JsonSerializer.Serialize(adapter?.Permissions?.Select(p => $"{p.Name}.{p.AccessLevel}".Replace(" ", "")).ToArray()), JsonClaimValueTypes.JsonArray), }), @@ -109,7 +106,7 @@ namespace Core.Cerberos.Adapters.Services var token = tokenHandler.CreateEncodedJwt(tokenDescriptor); - return token; + return (token, adapter.Modules); } public ActionResult ValidateTokenExpiration(string tokenExpiration) diff --git a/Core.Cerberos.Adapters/Settings/AuthSettings.cs b/Core.Thalos.BuildingBlocks/Settings/AuthSettings.cs similarity index 66% rename from Core.Cerberos.Adapters/Settings/AuthSettings.cs rename to Core.Thalos.BuildingBlocks/Settings/AuthSettings.cs index 5becd38..94bf189 100644 --- a/Core.Cerberos.Adapters/Settings/AuthSettings.cs +++ b/Core.Thalos.BuildingBlocks/Settings/AuthSettings.cs @@ -1,6 +1,6 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** @@ -12,11 +12,11 @@ public class AuthSettings public string? AzureADClientId { get; set; } public string? AzureADClientSecret { get; set; } - // Heath Cerberos App Settings - public string? HeathCerberosAppAuthorizationUrl { get; set; } - public string? HeathCerberosAppTokenUrl { get; set; } - public string? HeathCerberosAppClientId { get; set; } - public string? HeathCerberosAppScope { get; set; } + //Thalos App Settings + public string? ThalosAppAuthorizationUrl { get; set; } + public string? ThalosAppTokenUrl { get; set; } + public string? ThalosAppClientId { get; set; } + public string? ThalosAppScope { get; set; } // Token Keys public string? PrivateKey { get; set; } diff --git a/Core.Cerberos.Adapters/TokenProvider/HttpContextTokenProvider.cs b/Core.Thalos.BuildingBlocks/TokenProvider/HttpContextTokenProvider.cs similarity index 90% rename from Core.Cerberos.Adapters/TokenProvider/HttpContextTokenProvider.cs rename to Core.Thalos.BuildingBlocks/TokenProvider/HttpContextTokenProvider.cs index 1ccece5..ba1e901 100644 --- a/Core.Cerberos.Adapters/TokenProvider/HttpContextTokenProvider.cs +++ b/Core.Thalos.BuildingBlocks/TokenProvider/HttpContextTokenProvider.cs @@ -1,13 +1,13 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** -using Core.Cerberos.Adapters.Contracts; +using Core.Thalos.Adapters.Contracts; using Microsoft.AspNetCore.Http; -namespace Core.Cerberos.Adapters.TokenProvider +namespace Core.Thalos.Adapters.TokenProvider { /// /// Class to return the access token to controllers. diff --git a/Core.Cerberos.Adapters/UserExistenceAdapter.cs b/Core.Thalos.BuildingBlocks/UserExistenceAdapter.cs similarity index 91% rename from Core.Cerberos.Adapters/UserExistenceAdapter.cs rename to Core.Thalos.BuildingBlocks/UserExistenceAdapter.cs index 32d1098..de35a4f 100644 --- a/Core.Cerberos.Adapters/UserExistenceAdapter.cs +++ b/Core.Thalos.BuildingBlocks/UserExistenceAdapter.cs @@ -1,12 +1,12 @@ // *********************************************************************** // -// Heath +// AgileWebs // // *********************************************************************** using System.Text.Json.Serialization; -namespace Core.Cerberos.Adapters +namespace Core.Thalos.Adapters { /// /// Adapter representing a user.