返回签名文档数量
This commit is contained in:
@@ -20,72 +20,82 @@ namespace IRaCIS.Core.API
|
||||
configuration.Bind("JwtSetting", jwtSetting);
|
||||
|
||||
services
|
||||
.AddAuthentication(o=> {
|
||||
.AddAuthentication(o =>
|
||||
{
|
||||
o.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
|
||||
o.DefaultChallengeScheme = nameof(ApiResponseHandler);
|
||||
o.DefaultForbidScheme = nameof(ApiResponseHandler);
|
||||
})
|
||||
.AddJwtBearer(options =>
|
||||
{
|
||||
options.TokenValidationParameters = new TokenValidationParameters
|
||||
{
|
||||
ValidIssuer = jwtSetting.Issuer,
|
||||
ValidAudience = jwtSetting.Audience,
|
||||
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtSetting.SecurityKey)),
|
||||
// 默认 300s
|
||||
ClockSkew = TimeSpan.Zero
|
||||
};
|
||||
options.TokenValidationParameters = new TokenValidationParameters
|
||||
{
|
||||
ValidIssuer = jwtSetting.Issuer,
|
||||
ValidAudience = jwtSetting.Audience,
|
||||
IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtSetting.SecurityKey)),
|
||||
// 默认 300s
|
||||
ClockSkew = TimeSpan.Zero
|
||||
};
|
||||
|
||||
// OPTION 1: use `Invio.Extensions.Authentication.JwtBearer`
|
||||
// OPTION 1: use `Invio.Extensions.Authentication.JwtBearer`
|
||||
|
||||
options.AddQueryStringAuthentication();
|
||||
options.AddQueryStringAuthentication();
|
||||
|
||||
// OPTION 2: do it manually
|
||||
|
||||
#region
|
||||
//options.Events = new JwtBearerEvents
|
||||
//{
|
||||
// OnMessageReceived = (context) => {
|
||||
|
||||
// if (!context.Request.Query.TryGetValue("access_token", out StringValues values))
|
||||
// {
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
//).AddJwtBearerQueryStringAuthentication(
|
||||
// (JwtBearerQueryStringOptions options) =>
|
||||
// {
|
||||
// options.QueryStringParameterName = "access_token";
|
||||
// options.QueryStringBehavior = QueryStringBehaviors.Redact;
|
||||
// };
|
||||
|
||||
// if (values.Count > 1)
|
||||
// {
|
||||
// context.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
|
||||
// context.Fail(
|
||||
// "Only one 'access_token' query string parameter can be defined. " +
|
||||
// $"However, {values.Count:N0} were included in the request."
|
||||
// );
|
||||
// OPTION 2: do it manually
|
||||
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
#region
|
||||
//options.Events = new JwtBearerEvents
|
||||
//{
|
||||
// OnMessageReceived = (context) => {
|
||||
|
||||
// var token = values.Single();
|
||||
// if (!context.Request.Query.TryGetValue("access_token", out StringValues values))
|
||||
// {
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
|
||||
// if (String.IsNullOrWhiteSpace(token))
|
||||
// {
|
||||
// context.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
|
||||
// context.Fail(
|
||||
// "The 'access_token' query string parameter was defined, " +
|
||||
// "but a value to represent the token was not included."
|
||||
// );
|
||||
// if (values.Count > 1)
|
||||
// {
|
||||
// context.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
|
||||
// context.Fail(
|
||||
// "Only one 'access_token' query string parameter can be defined. " +
|
||||
// $"However, {values.Count:N0} were included in the request."
|
||||
// );
|
||||
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
|
||||
// context.Token = token;
|
||||
// var token = values.Single();
|
||||
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
//};
|
||||
#endregion
|
||||
// if (String.IsNullOrWhiteSpace(token))
|
||||
// {
|
||||
// context.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
|
||||
// context.Fail(
|
||||
// "The 'access_token' query string parameter was defined, " +
|
||||
// "but a value to represent the token was not included."
|
||||
// );
|
||||
|
||||
})
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
|
||||
// context.Token = token;
|
||||
|
||||
// return Task.CompletedTask;
|
||||
// }
|
||||
//};
|
||||
#endregion
|
||||
|
||||
})
|
||||
.AddScheme<AuthenticationSchemeOptions, ApiResponseHandler>(nameof(ApiResponseHandler), o => { });
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user