Azure http 触发器函数应用程序不附带启动。我想实现 azure 的 AD 身份验证,它添加 Microsoft.AspNetCore.Builder 的 UseAuthentication 方法来验证 token 并对用户进行身份验证。
目前Http触发器直接调用Run方法。应该有一些中间件逻辑来添加服务和配置
创业类
public void ConfigureServices(IServiceCollection services)
{ services.AddAuthentication(AzureADDefaults.BearerAuthenticationScheme)
.AddAzureADBearer(options => Configuration.Bind("ConfigName", options));
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory logger)
{
app.UseAuthentication();
}
授权属性下的后实现应验证 token 并允许/拒绝用户访问。
public static class Function1
{
[Authorize]
[FunctionName("Function1")]
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
log.LogInformation("C# HTTP trigger function processed a request.");
return (ActionResult)new OkObjectResult($"Hello");
}
}
请帮忙。
最佳答案
默认情况下,Azure 函数没有 Startup
类。您可以使用 IWebJobStartup
添加服务,但无法添加自定义中间件。
关于c# - 如何在http触发azure函数应用程序中添加自定义启动类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58796923/