Fix localhost permissions for AllInOne bundle app

Fixes #3987
This commit is contained in:
Sipke Schoorstra 2023-05-02 11:03:34 +02:00
parent 437eb3f9dc
commit e12a57b83a
2 changed files with 3 additions and 10 deletions

View file

@ -1,12 +1,8 @@
using Elsa.EntityFrameworkCore.Extensions;
using Elsa.Extensions;
using Elsa.Identity;
using Elsa.EntityFrameworkCore.Modules.Labels;
using Elsa.EntityFrameworkCore.Modules.Management;
using Elsa.EntityFrameworkCore.Modules.Runtime;
using Elsa.Requirements;
using Elsa.Webhooks.Extensions;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
var builder = WebApplication.CreateBuilder(args);
@ -20,8 +16,6 @@ var identityTokenSection = identitySection.GetSection("Tokens");
// Add Elsa services.
services
.AddElsa(elsa => elsa
.UseWorkflows()
.UseWorkflowsApi()
.UseIdentity(identity =>
{
identity.IdentityOptions = options => identitySection.Bind(options);
@ -38,18 +32,16 @@ services
runtime.UseExecutionLogRecords(e => e.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)));
runtime.UseAsyncWorkflowStateExporter();
})
.UseLabels(labels => labels.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)))
.UseScheduling()
.UseJavaScript()
.UseLiquid()
.UseHttp()
.UseEmail(email => email.ConfigureOptions = options => configuration.GetSection("Smtp").Bind(options))
.UseWebhooks(webhooks => webhooks.WebhookOptions = options => builder.Configuration.GetSection("Webhooks").Bind(options))
.UseWorkflowsApi()
);
services.AddHealthChecks();
services.AddSingleton<IAuthorizationHandler, LocalHostRequirementHandler>();
services.AddAuthorization(options => options.AddPolicy(IdentityPolicyNames.SecurityRoot, policy => policy.AddRequirements(new LocalHostRequirement())));
services.AddCors(cors => cors.AddDefaultPolicy(policy => policy.AllowAnyHeader().AllowAnyMethod().AllowAnyOrigin()));
// Razor Pages.
@ -67,6 +59,7 @@ if (!app.Environment.IsDevelopment())
}
app.UseHttpsRedirection();
app.MapHealthChecks("/health");
app.UseCors();
app.UseStaticFiles();
app.UseRouting();

View file

@ -43,7 +43,7 @@ internal class Create : ElsaEndpoint<Request, Response>
public override void Configure()
{
Post("/identity/applications");
Permissions("create:application");
ConfigurePermissions("create:application");
Policies(IdentityPolicyNames.SecurityRoot);
}