【问题标题】:Authentication with AzureAD via TestCafe Tests通过 TestCafe 测试使用 AzureAD 进行身份验证
【发布时间】:2019-10-08 14:39:25
【问题描述】:

运行 testCafe 时,我无法通过 AzureAD 进行身份验证/登录。

const testrole = Role(
  'https://login.microsoftonline.com/',
  async t => {
    await t
      .typeText(Selector('input').withAttribute('type', 'email'), *******)
      .click(Selector('#idSIButton9'))
      .typeText(Selector('input').withAttribute('type', 'password'), ********)
      .click(Selector('#idSIButton9'));
  },
  { preserveUrl: true }
);

上述步骤工作正常,但输入密码后我收到一条消息:

“无法登录 Outlook 帐户,错误:AADSTS900561:端点仅接受 POST 请求。收到 GET 请求。”

从我最初的搜索来看,这似乎与浏览器上的第 3 方 cookie 有关。但是,我目前无法找到解决方案。

知道我是如何解决这个问题的吗?

【问题讨论】:

  • 我现在收到“您无法从这里到达那里”的消息。我正在使用我的 chrome 配置文件并允许主机和端口,但仍然无法通过此消息。

标签: testing automated-tests azure-active-directory e2e-testing testcafe


【解决方案1】:

Azure AD 产品团队一直提醒我,尝试像这样自动登录是个坏主意。 即使您成功了,他们也可能会检测到您是机器人并开始阻止您的请求。

相反,要获取访问令牌,您需要使用客户端凭据流(用于仅限应用的令牌)或资源所有者密码凭据流(用于委派的用户令牌)。

客户端凭据流:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-client-creds-grant-flow

ROPC 流:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth-ropc

您必须小心保护用于测试的凭据。 并尽可能使用测试租户。

【讨论】:

  • 我明白你的意思,但我似乎无法通过任何方法访问该应用程序。我得到'你不能从这里到那里'
猜你喜欢
  • 1970-01-01
  • 2017-10-27
  • 1970-01-01
  • 1970-01-01
  • 2017-01-30
  • 2020-12-08
  • 1970-01-01
  • 2016-05-05
  • 1970-01-01
相关资源
最近更新 更多