Browse Source

Create production certificate while creating a new solution

Resolve #17500
pull/17512/head
maliming 3 years ago
parent
commit
9a10caedb0
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 1
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs
  2. 29
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs
  3. 15
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/RandomizeAuthServerPassPhraseStep.cs
  4. 26
      modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs
  5. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj
  6. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs
  7. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj
  8. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs
  9. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/MyCompanyName.MyProjectName.Blazor.WebAssembly.Server.Mongo.csproj
  10. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/MyProjectNameHostModule.cs
  11. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/MyCompanyName.MyProjectName.Blazor.WebAssembly.Server.csproj
  12. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/MyProjectNameHostModule.cs
  13. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj
  14. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs
  15. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj
  16. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs
  17. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj
  18. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs
  19. 4
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj
  20. 29
      templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs
  21. 4
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/MyCompanyName.MyProjectName.AuthServer.csproj
  22. 11
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/MyProjectNameAuthServerModule.cs
  23. 4
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj
  24. 11
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameBlazorModule.cs
  25. 4
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj
  26. 11
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs

1
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/NewCommand.cs

@ -98,6 +98,7 @@ public class NewCommand : ProjectCreationCommandBase, IConsoleCommand, ITransien
Logger.LogInformation($"'{projectName}' has been successfully created to '{projectArgs.OutputFolder}'"); Logger.LogInformation($"'{projectName}' has been successfully created to '{projectArgs.OutputFolder}'");
ConfigureNpmPackagesForTheme(projectArgs); ConfigureNpmPackagesForTheme(projectArgs);
await CreateOpenIddictPfxFilesAsync(projectArgs);
await RunGraphBuildForMicroserviceServiceTemplate(projectArgs); await RunGraphBuildForMicroserviceServiceTemplate(projectArgs);
await CreateInitialMigrationsAsync(projectArgs); await CreateInitialMigrationsAsync(projectArgs);

29
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProjectCreationCommandBase.cs

@ -16,6 +16,7 @@ using Volo.Abp.Cli.LIbs;
using Volo.Abp.Cli.ProjectBuilding; using Volo.Abp.Cli.ProjectBuilding;
using Volo.Abp.Cli.ProjectBuilding.Building; using Volo.Abp.Cli.ProjectBuilding.Building;
using Volo.Abp.Cli.ProjectBuilding.Events; using Volo.Abp.Cli.ProjectBuilding.Events;
using Volo.Abp.Cli.ProjectBuilding.Templates;
using Volo.Abp.Cli.ProjectBuilding.Templates.App; using Volo.Abp.Cli.ProjectBuilding.Templates.App;
using Volo.Abp.Cli.ProjectBuilding.Templates.Microservice; using Volo.Abp.Cli.ProjectBuilding.Templates.Microservice;
using Volo.Abp.Cli.ProjectBuilding.Templates.Module; using Volo.Abp.Cli.ProjectBuilding.Templates.Module;
@ -481,6 +482,34 @@ public abstract class ProjectCreationCommandBase
await InitialMigrationCreator.CreateAsync(Path.GetDirectoryName(efCoreProjectPath), isLayeredTemplate); await InitialMigrationCreator.CreateAsync(Path.GetDirectoryName(efCoreProjectPath), isLayeredTemplate);
} }
protected Task CreateOpenIddictPfxFilesAsync(ProjectBuildArgs projectArgs)
{
var modules = projectArgs.ExtraProperties[nameof(RandomizeAuthServerPassPhraseStep)].Split(Environment.NewLine);
foreach (var module in modules.Where(x => !string.IsNullOrWhiteSpace(x)))
{
var moduleDirectory = projectArgs.OutputFolder + module;
if (projectArgs.UiFramework != UiFramework.Angular)
{
moduleDirectory = moduleDirectory.Replace("/aspnet-core/", "/");
}
moduleDirectory = Path.GetDirectoryName(projectArgs.SolutionName.CompanyName == null
? moduleDirectory.Replace("MyCompanyName.MyProjectName", projectArgs.SolutionName.ProjectName)
: moduleDirectory.Replace("MyCompanyName", projectArgs.SolutionName.CompanyName).Replace("MyProjectName", projectArgs.SolutionName.ProjectName));
if (Directory.Exists(moduleDirectory))
{
CmdHelper.RunCmd($"dotnet dev-certs https -v -ep openiddict.pfx -p {RandomizeAuthServerPassPhraseStep.RandomPassPhrase}", moduleDirectory);
}
else
{
Logger.LogWarning($"Couldn't find the module directory to create openiddict.pfx file: {moduleDirectory}");
}
}
return Task.CompletedTask;
}
protected async Task ConfigurePwaSupportForAngular(ProjectBuildArgs projectArgs) protected async Task ConfigurePwaSupportForAngular(ProjectBuildArgs projectArgs)
{ {
var isAngular = projectArgs.UiFramework == UiFramework.Angular; var isAngular = projectArgs.UiFramework == UiFramework.Angular;

15
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/RandomizeAuthServerPassPhraseStep.cs

@ -1,4 +1,5 @@
using System; using System;
using System.Collections.Generic;
using System.Linq; using System.Linq;
using Volo.Abp.Cli.ProjectBuilding.Building; using Volo.Abp.Cli.ProjectBuilding.Building;
@ -8,6 +9,8 @@ public class RandomizeAuthServerPassPhraseStep : ProjectBuildPipelineStep
{ {
protected const string DefaultPassPhrase = "00000000-0000-0000-0000-000000000000"; protected const string DefaultPassPhrase = "00000000-0000-0000-0000-000000000000";
public readonly static string RandomPassPhrase = Guid.NewGuid().ToString("D");
public override void Execute(ProjectBuildContext context) public override void Execute(ProjectBuildContext context)
{ {
var files = context.Files var files = context.Files
@ -15,7 +18,7 @@ public class RandomizeAuthServerPassPhraseStep : ProjectBuildPipelineStep
.Where(x => x.Content.IndexOf(DefaultPassPhrase, StringComparison.InvariantCultureIgnoreCase) >= 0) .Where(x => x.Content.IndexOf(DefaultPassPhrase, StringComparison.InvariantCultureIgnoreCase) >= 0)
.ToList(); .ToList();
var randomPassPhrase = Guid.NewGuid().ToString("D"); var modules = new List<string>();
foreach (var file in files) foreach (var file in files)
{ {
file.NormalizeLineEndings(); file.NormalizeLineEndings();
@ -25,11 +28,19 @@ public class RandomizeAuthServerPassPhraseStep : ProjectBuildPipelineStep
{ {
if (lines[i].Contains(DefaultPassPhrase)) if (lines[i].Contains(DefaultPassPhrase))
{ {
lines[i] = lines[i].Replace(DefaultPassPhrase, randomPassPhrase); lines[i] = lines[i].Replace(DefaultPassPhrase, RandomPassPhrase);
if (file.Name.EndsWith("Module.cs", StringComparison.OrdinalIgnoreCase) &&
file.Content.Contains("openiddict.pfx", StringComparison.OrdinalIgnoreCase))
{
modules.Add(file.Name);
}
} }
} }
file.SetLines(lines); file.SetLines(lines);
} }
context.BuildArgs.ExtraProperties.TryAdd(nameof(RandomizeAuthServerPassPhraseStep), string.Empty);
context.BuildArgs.ExtraProperties[nameof(RandomizeAuthServerPassPhraseStep)] += modules.JoinAsString(Environment.NewLine);
} }
} }

26
modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Microsoft/Extensions/DependencyInjection/OpenIddictServerBuilderExtensions.cs

@ -0,0 +1,26 @@
using System.IO;
using System.Security.Cryptography.X509Certificates;
using Volo.Abp.OpenIddict;
namespace Microsoft.Extensions.DependencyInjection;
public static class OpenIddictServerBuilderExtensions
{
public static OpenIddictServerBuilder AddProductionEncryptionAndSigningCertificate(this OpenIddictServerBuilder builder, string fileName, string passPhrase)
{
builder.Services.PreConfigure<AbpOpenIddictAspNetCoreOptions>(options =>
{
options.AddDevelopmentEncryptionAndSigningCertificate = false;
});
if (!File.Exists(fileName))
{
throw new FileNotFoundException($"Signing Certificate couldn't found: {fileName}");
}
var certificate = new X509Certificate2(fileName, passPhrase);
builder.AddSigningCertificate(certificate);
builder.AddEncryptionCertificate(certificate);
return builder;
}
}

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyCompanyName.MyProjectName.Blazor.Server.Mongo.csproj

@ -90,6 +90,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server.Mongo/MyProjectNameModule.cs

@ -111,6 +111,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -119,15 +122,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj

@ -98,6 +98,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameModule.cs

@ -113,6 +113,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -121,15 +124,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/MyCompanyName.MyProjectName.Blazor.WebAssembly.Server.Mongo.csproj

@ -86,6 +86,10 @@
<ProjectReference Include="..\Shared\MyCompanyName.MyProjectName.Blazor.WebAssembly.Shared.csproj" /> <ProjectReference Include="..\Shared\MyCompanyName.MyProjectName.Blazor.WebAssembly.Shared.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server.Mongo/MyProjectNameHostModule.cs

@ -99,6 +99,9 @@ public class MyProjectNameHostModule : AbpModule
{ {
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -106,15 +109,23 @@ public class MyProjectNameHostModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/MyCompanyName.MyProjectName.Blazor.WebAssembly.Server.csproj

@ -94,6 +94,10 @@
<ProjectReference Include="..\Shared\MyCompanyName.MyProjectName.Blazor.WebAssembly.Shared.csproj" /> <ProjectReference Include="..\Shared\MyCompanyName.MyProjectName.Blazor.WebAssembly.Shared.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Server/MyProjectNameHostModule.cs

@ -102,6 +102,9 @@ public class MyProjectNameHostModule : AbpModule
{ {
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -109,15 +112,23 @@ public class MyProjectNameHostModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyCompanyName.MyProjectName.Host.Mongo.csproj

@ -82,6 +82,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host.Mongo/MyProjectNameModule.cs

@ -100,6 +100,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -107,15 +110,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyCompanyName.MyProjectName.Host.csproj

@ -90,6 +90,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Host/MyProjectNameModule.cs

@ -103,6 +103,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -110,15 +113,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyCompanyName.MyProjectName.Mvc.Mongo.csproj

@ -85,6 +85,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc.Mongo/MyProjectNameModule.cs

@ -106,6 +106,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -113,15 +116,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyCompanyName.MyProjectName.Mvc.csproj

@ -93,6 +93,10 @@
<EmbeddedResource Include="Localization\MyProjectName\*.json" /> <EmbeddedResource Include="Localization\MyProjectName\*.json" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

29
templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Mvc/MyProjectNameModule.cs

@ -108,6 +108,9 @@ public class MyProjectNameModule : AbpModule
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -115,15 +118,23 @@ public class MyProjectNameModule : AbpModule
); );
}); });
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
{ {
options.AddAudiences("MyProjectName"); options.AddAudiences("MyProjectName");
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
});
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
});
} }
public override void ConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context)

4
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/MyCompanyName.MyProjectName.AuthServer.csproj

@ -31,6 +31,10 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="5.0.0" /> <PackageReference Include="Serilog.AspNetCore" Version="5.0.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" />

11
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.AuthServer/MyProjectNameAuthServerModule.cs

@ -52,6 +52,9 @@ public class MyProjectNameAuthServerModule : AbpModule
{ {
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
PreConfigure<OpenIddictBuilder>(builder => PreConfigure<OpenIddictBuilder>(builder =>
{ {
builder.AddValidation(options => builder.AddValidation(options =>
@ -60,6 +63,14 @@ public class MyProjectNameAuthServerModule : AbpModule
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
}); });
} }

4
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/MyCompanyName.MyProjectName.Blazor.Server.csproj

@ -45,6 +45,10 @@
<ProjectReference Include="..\..\..\..\..\modules\setting-management\src\Volo.Abp.SettingManagement.Blazor.Server\Volo.Abp.SettingManagement.Blazor.Server.csproj" /> <ProjectReference Include="..\..\..\..\..\modules\setting-management\src\Volo.Abp.SettingManagement.Blazor.Server\Volo.Abp.SettingManagement.Blazor.Server.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Remove="Logs\**" /> <Compile Remove="Logs\**" />
<Content Remove="Logs\**" /> <Content Remove="Logs\**" />

11
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Server/MyProjectNameBlazorModule.cs

@ -62,6 +62,9 @@ public class MyProjectNameBlazorModule : AbpModule
{ {
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -82,6 +85,14 @@ public class MyProjectNameBlazorModule : AbpModule
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
}); });
} }

4
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj

@ -31,6 +31,10 @@
</None> </None>
</ItemGroup> </ItemGroup>
<ItemGroup Condition="Exists('./openiddict.pfx')">
<None Remove="openiddict.pfx" />
</ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="5.0.0" /> <PackageReference Include="Serilog.AspNetCore" Version="5.0.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" />

11
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs

@ -57,6 +57,9 @@ public class MyProjectNameWebModule : AbpModule
{ {
public override void PreConfigureServices(ServiceConfigurationContext context) public override void PreConfigureServices(ServiceConfigurationContext context)
{ {
var hostingEnvironment = context.Services.GetHostingEnvironment();
var configuration = context.Services.GetConfiguration();
context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options => context.Services.PreConfigure<AbpMvcDataAnnotationsLocalizationOptions>(options =>
{ {
options.AddAssemblyResource( options.AddAssemblyResource(
@ -77,6 +80,14 @@ public class MyProjectNameWebModule : AbpModule
options.UseLocalServer(); options.UseLocalServer();
options.UseAspNetCore(); options.UseAspNetCore();
}); });
if (!hostingEnvironment.IsDevelopment())
{
PreConfigure<OpenIddictServerBuilder>(serverBuilder =>
{
serverBuilder.AddProductionEncryptionAndSigningCertificate("openiddict.pfx", "00000000-0000-0000-0000-000000000000");
});
}
}); });
} }

Loading…
Cancel
Save