azure无法使用oauth识别我的用户

时间:2019-05-24 19:35:54

标签: ruby oauth-2.0 azure-active-directory

我正在尝试使用天蓝色活动目录向我的Web应用程序添加单点登录。当定向到ms登录屏幕时,我收到消息“查找您的帐户时出现问题。请点击“下一步”重试。”

我在“应用程序注册”中创建了该应用程序,并从那里检索了客户端和租户ID。执行以下代码时,系统提示我输入用户名(登录)。 该应用程序还链接到用户帐户。

我的应用程序“登录”按钮后面的代码

 $.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

0 个答案:

没有答案