В другом примере, который я видел, в index.html добавляется метатег, который предоставляет значение nonce для ссылки Angular. Каким-то образом перед обработкой страницы он может переписать index.html, чтобы добавить nonce в метатег.
Предполагая, что мой серверный код написан на C# и работает на .net 7, вот как будет выглядеть мой код в моем Program.cs для создания криптографического nonce и добавления его в заголовок CSP
Код: Выделить всё
app.Use(async (context, next) =>
{
// cryptographic-noncing only supported in Angular 16
var rng = RandomNumberGenerator.Create();
var nonceBytes = new byte[32];
rng.GetBytes(nonceBytes);
var nonce = Convert.ToBase64String(nonceBytes);
context.Response.Headers.Add("Content-Security-Policy", $"default-src 'self' 'nonce-{nonce}'");
await next();
});
Каков самый простой/лучший способ сделать nonce доступным для Angular для ссылки?
Я мог бы поклясться, что видел пример того, как заставить Angular получать значение nonce из HTTP-заголовка CSP, но я не могу найти его снова
Подробнее здесь: https://stackoverflow.com/questions/775 ... ng-net-7-c
Мобильная версия