This commit is contained in:
2026-10-11 23:20:01 +03:30
parent e86b50163c
commit 4d2193c3b9
2 changed files with 44 additions and 39 deletions
@@ -159,7 +159,7 @@ namespace xIds.Controllers
[RequireXPowered] [RequireXPowered]
[HttpGet("Test/HiApiKeyAccess")] [HttpGet("Test/HiApiKeyAccess")]
[Authorize(LocalApi.PolicyName)] // [Authorize(LocalApi.PolicyName)]
[Authorize(Policy = XPolicies.ApiKeyAccess)] [Authorize(Policy = XPolicies.ApiKeyAccess)]
public ActionResult<string> HiApiKeyAccess() public ActionResult<string> HiApiKeyAccess()
{ {
+40 -35
View File
@@ -410,45 +410,50 @@ namespace xIds.DI
// //
// Create Authentication Builder ... // Create Authentication Builder ...
// var authBuilder = services.AddAuthentication(); var authBuilder = services.AddAuthentication();
// //
// Create Authentication Builder ... // Create Authentication Builder ...
var authBuilder = services.AddAuthentication(options => // var authBuilder = services.AddAuthentication(options =>
{ // {
// // //
// Setting Default Authentication Schema ... // // Setting Default Authentication Schema ...
// For Handling Smart Schema Forwarder ... // // For Handling Smart Schema Forwarder ...
options.DefaultScheme = XAuthentication.SMART_SCHEME; // options.DefaultScheme = XAuthentication.SMART_SCHEME;
options.DefaultChallengeScheme = XAuthentication.SMART_SCHEME; // options.DefaultChallengeScheme = XAuthentication.SMART_SCHEME;
options.DefaultAuthenticateScheme = XAuthentication.SMART_SCHEME; // options.DefaultAuthenticateScheme = XAuthentication.SMART_SCHEME;
}) // })
.AddPolicyScheme( // .AddPolicyScheme(
authenticationScheme: XAuthentication.SMART_SCHEME, // displayName: XAuthentication.SMART_SCHEME,
displayName: XAuthentication.SMART_SCHEME, // authenticationScheme: XAuthentication.SMART_SCHEME,
configureOptions: options => // configureOptions: options =>
{ // {
// // //
// Configure Forward Default Selector ... // // Configure Forward Default Selector ...
options.ForwardDefaultSelector = context => // options.ForwardDefaultSelector = context =>
{ // {
// // //
// Retrieve XApiKey Header Key ... // // Retrieve XApiKey Header Key ...
var apiKeyHeader = XHeader.ApiKey.GetStringValue(); // var apiKeyHeader = XHeader.ApiKey.GetStringValue();
// //
// // If Header Contains Key ...
// if (context.Request.Headers.ContainsKey(apiKeyHeader))
// {
// return XAuthenticationScheme.XApiKey.GetStringValue();
// }
// //
// // If not ...
// return XAuthentication.IDENTITY_SERVER_LOCAL_API;
// };
// }
// );
// //
// If Header Contains Key ... // authBuilder.AddScheme<AuthenticationSchemeOptions, XApiKeyAuthenticationHandler>(
if (context.Request.Headers.ContainsKey(apiKeyHeader)) // XAuthenticationScheme.XApiKey.GetStringValue(),
{ // options => { });
return XAuthenticationScheme.XApiKey.GetStringValue();
}
//
// If not ...
return XAuthentication.IDENTITY_SERVER_LOCAL_API;
};
}
);
// //
// Add JwtBearer by Smart Schema ForwardDefaultSelector ... // Add JwtBearer by Smart Schema ForwardDefaultSelector ...
@@ -513,7 +518,7 @@ namespace xIds.DI
// //
policy.AddAuthenticationSchemes( policy.AddAuthenticationSchemes(
[ [
XAuthenticationScheme.XApiKey.GetStringValue(), // XAuthenticationScheme.XApiKey.GetStringValue(),
IdentityServerConstants.LocalApi.AuthenticationScheme IdentityServerConstants.LocalApi.AuthenticationScheme
]); ]);