Azure Active Directory B2C - AADB2C - AADB2C90079: Клиенты должны отправлять client_secret при использовании конфиденциального гранта - PullRequest
1 голос
/ 05 апреля 2019

Я впервые работаю с Azure Active Directory B2C.Я разрабатываю приложение WPF / Desktop.

Вход в систему и выход из нее работали отлично, пока по непонятным причинам сегодня она перестала работать и теперь выдает следующее исключение при входе.

AADB2C90079: Clients must send a client_secret when redeeming a confidential grant.

Есть мнение, что мне нужно обновить токен, как указано в этом вопросе о переполнении стека: Пользовательские политики Azure B2C: неверный запрос, ошибка секрета клиента

Но я немалейшая подсказка, как это сделать.

Вот мой код входа в систему (Await PublicClientApp.AcquireTokenAsync (...) - это то, что вызывает исключение)

Public Async Function SignIn() As Task(Of Boolean)

    Dim authResult As AuthenticationResult = Nothing
    Dim accounts As IEnumerable(Of IAccount) = Await PublicClientApp.GetAccountsAsync()

    Try
        authResult = Await PublicClientApp.AcquireTokenAsync(ApiScopes, GetUserByPolicy(accounts, PolicySignUpSignIn), UIBehavior.SelectAccount, String.Empty, Nothing, Authority)
        userProf = Await GetUserInformation()
        SignInState = SignInStateEnum.SignedIn
        Return True
    Catch ex As MsalServiceException

        Try
            If ex.Message.Contains("AADB2C90118") Then
                authResult = PublicClientApp.AcquireTokenAsync(ApiScopes, GetUserByPolicy(accounts, PolicySignUpSignIn), UIBehavior.SelectAccount, String.Empty, Nothing, AuthorityResetPassword).Result
                userProf = GetUserInformation().Result
                SignInState = SignInStateEnum.SignedIn
                Return True
            Else
                logger.Error($"Error Acquiring Token:{Environment.NewLine}{ex}")
                logger.Error("Exception Raised", ex)
                userProf = Nothing
                SignInState = SignInStateEnum.SignedOut
                Return False
            End If
        Catch __unusedException1__ As Exception
            logger.Error("Exception Raised", __unusedException1__)
            userProf = Nothing
            SignInState = SignInStateEnum.SignedOut
            Return False
        End Try

    Catch ex As Exception
        logger.Error($"Users:{String.Join(",", accounts.[Select](Function(u) u.Username))}{Environment.NewLine}Error Acquiring Token:{Environment.NewLine}{ex}")
        logger.Error("Exception Raised", ex)
        userProf = Nothing
        SignInState = SignInStateEnum.SignedOut
        Return False
    End Try

End Function

1 Ответ

1 голос
/ 05 апреля 2019

Это было идентифицировано как проблема Azure. Это сообщение, полученное мной от службы поддержки Azure: «Эта проблема была обнаружена как внутренняя проблема. Наша группа разработчиков продукта обнаружила проблему и установила исправление.дайте мне знать, работает ли он сейчас для вашего арендатора? "

...