Установить идентификатор клиента динамически Оуин - PullRequest
0 голосов
/ 03 декабря 2018

Я использую OWIN для аутентификации Azure AD.Мультитенант, каждый клиент будет использовать собственную Azure AD.

Попытка динамически установить clientId в методе ConfigureAuth в классе StartupAuth в зависимости от введенного URL,

Работает нормально при локальном запуске, но при развертывании в Azure происходит сбой.

Получение AADSTS900144: Тело запроса должно содержать следующий параметр: 'client_id'

app.UseOpenIdConnectAuthentication(
   new OpenIdConnectAuthenticationOptions
   {
       ClientId = setClientId(),


    public string setClientId()
{      
    string fullUrl = HttpContext.Current.Request.Url.AbsoluteUri;
    string[] urlArr = fullUrl.Split('/');
    string[] urlCoreParts = urlArr[2].Split('.');
    string org = urlCoreParts[0]; 


if (org == "CustomerA")
{
    clientId = ConfigurationManager.AppSettings["ClientId:CustomerA"];
}
else if (org == "CustomerX")
{
    clientId = ConfigurationManager.AppSettings["ClientId:CustomerX"];
}
...