лазурь не узнает моего пользователя с oauth - PullRequest
1 голос
/ 24 мая 2019

Я пытаюсь добавить единый вход в свое веб-приложение с помощью Azure Active Directory. При обращении к экрану MS Sign-In появляется сообщение «При поиске вашей учетной записи возникла проблема. Нажмите« Далее », чтобы повторить попытку».

Я создал приложение в разделе «Регистрация приложений» и получил оттуда идентификатор клиента и клиента. При выполнении кода ниже я получаю запрос на ввод моего имени пользователя (Вход в систему). Приложение также связано с учетной записью пользователя.

Код моего приложения "кнопка входа"

 $.ajax({
            processData: true,
            type: 'GET',
            url: '/configuration/test_sso',
            success: function (response) {
                var w = window.open('about:blank');
                w.document.open();
                w.document.write(response);
                w.document.close();
            },
            error: function () {
            }
        });

код моего контроллера

   def test_sso
    client_id = '00000000-0000-0000-0000-000000000000'
    tenant = '00000000-0000-0000-0000-000000000000'
    uri = URI.parse("https://login.microsoftonline.com/#{tenant}/oauth2/v2.0/authorize")
    http = Net::HTTP.new(uri.host, uri.port)
    http.read_timeout = 480
    http.open_timeout = 240
    http.use_ssl = true
    http.verify_mode = OpenSSL::SSL::VERIFY_NONE
    request = Net::HTTP::Post.new(uri.request_uri)
    request.add_field('Content-Type', 'application/x-www-form-urlencoded')
    request.body = "client_id=#{client_id}&response_type=id_token&redirect_uri=http://localhost:3000/myapp/oresponse/&scope=openid&response_mode=fragment&state=12345&nonce=67890"
    response = http.request(request)
    render :text => response.body
  end

Я направлен в диалоговое окно «Вход в Microsoft», но при вводе имени учетной записи Azure и нажатии «Далее» я получаю сообщение: «При поиске вашей учетной записи возникла проблема. Нажмите« Далее », чтобы повторить попытку.»

Я ожидаю, что смогу ввести свое имя пользователя и пароль на экране ms, в случае успеха я бы ожидал, что redirect_uri будет вызываться

...