Настройка ASP.NET Core CORS перестает работать после развертывания бицепсаC#

Место общения программистов C#
Ответить
Anonymous
 Настройка ASP.NET Core CORS перестает работать после развертывания бицепса

Сообщение Anonymous »

У нас есть решение веб-API ASP.NET Core, развернутое в веб-приложении Azure. Мы развертываем проект ASP.NET Core в Azure, и все работает как положено. Однако когда мы повторно развертываем сценарии инфраструктуры Bicep для создания веб-приложения, конфигурация CORS, похоже, теряется, и API начинает отклонять межсайтовые запросы.
Перезапуск веб-приложения не помогает, но перераспределение делает это. Мы попытались вызвать этот разрыв, перезапустив/запустив/остановив веб-приложение, но это не нарушает конфигурацию cors.
Есть идеи относительно того, как шаблон Arm может нарушить ASP.NET Core CORS. ? Для веб-приложения не настроен Cors.
В нашем API мы используем следующую конфигурацию CORS:
(...)
var MyAllowSpecificOrigins = "_myAllowSpecificOrigins";

builder.Services.AddCors(options =>
{
List allowedOrigins = ["url"];

options.AddPolicy(name: MyAllowSpecificOrigins,
policy =>
{
policy
.WithOrigins([.. allowedOrigins])
.AllowAnyMethod()
.AllowAnyHeader();
});
});
(...)

var app = builder.Build();

app.UseExceptionHandler();

// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
}

app.UseCors(MyAllowSpecificOrigins);

app.UseAuthentication();
app.UseAuthorization();

app.MapControllers()
.RequireAuthorization();

app.Run();

А вот шаблон бицепса для веб-приложения:
resource appServicePlan 'Microsoft.Web/serverfarms@2023-01-01' = {
name: appServicePlanName
location: location
properties: {
reserved: false
}
sku: {
...
}
}

resource apiService 'Microsoft.Web/sites@2023-01-01' = {
name: apiAppName
location: location
identity: {
type: 'SystemAssigned'
}
properties: {
httpsOnly: true
serverFarmId: appServicePlan.id
siteConfig: {
alwaysOn: true
http20Enabled: true
appSettings:[
{
name: 'APPLICATIONINSIGHTS_CONNECTION_STRING'
value: applicationInsights.properties.ConnectionString
}
{
name: 'ApplicationInsightsAgent_EXTENSION_VERSION'
value: '~2'
}
]
}
}
}

resource apiServiceSiteConfig 'Microsoft.Web/sites/config@2023-01-01' = {
parent: apiService
name: 'web'
properties: {
cors: null
netFrameworkVersion: 'v8.0'
use32BitWorkerProcess: false
webSocketsEnabled: true
alwaysOn: true
managedPipelineMode: 'Integrated'
http20Enabled: true
minTlsVersion: '1.2'
scmMinTlsVersion: '1.2'
ftpsState: 'FtpsOnly'
localMySqlEnabled: false
}
}


Подробнее здесь: https://stackoverflow.com/questions/790 ... deployment
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»