使用 Microsoft 登录的 Ory / Kratos 登录页面?
Posted
技术标签:
【中文标题】使用 Microsoft 登录的 Ory / Kratos 登录页面?【英文标题】:Ory / Kratos Login page for Login with Microsoft? 【发布时间】:2021-12-30 04:32:31 【问题描述】:我正在尝试使用 Ory Kratos 并让用户使用他们现有的 Microsoft 帐户登录。在https://www.ory.sh/kratos/docs/concepts/credentials/openid-connect-oidc-oauth2 完成指南后,我无法让它工作。
我的问题是流程应该返回什么登录网址?如果留空,则会显示一个页面,说明应设置此配置:
selfservice:
flows:
login:
ui_url: http://my-app.com/login
但我希望向用户显示 Microsoft 的登录表单,然后在用户登录时重定向回来。我不想显示要求 Microsoft 凭据的自定义登录表单。
在使用 Kratos 和 Microsoft 登录流程时应该如何配置登录流程?
【问题讨论】:
【参考方案1】:就像你提到的,必须指定ui_url
。因此,您可以尝试隐藏 UI 的默认 ID、密码和提交部分,只显示 Sign in with Microsoft
按钮。
所以登录流程或多或少类似于以下内容:
这就是我在参考实现中所做的,我按照此处的文档进行了尝试:https://www.ory.sh/kratos/docs/guides/sign-in-with-github-google-facebook-linkedin/#microsoft
我的参考实现的链接: https://github.com/atreya2011/go-kratos-test/tree/microsoft-oidc
虽然我的参考实现是在 Go 中,但您可以将其调整为您选择的任何其他语言!
配置文件详细信息在这里: https://github.com/atreya2011/go-kratos-test/tree/microsoft-oidc/config
要试用参考实现,您需要安装 Docker,然后执行以下操作:
-
在本地克隆存储库。
运行
docker-compose up --build
然后在浏览器中打开http://localhost:4455/login
不要忘记使用您从 Microsoft 获得的 client_id
和 client_secret
更新配置!
希望我的回答对你有帮助:)
【讨论】:
以上是关于使用 Microsoft 登录的 Ory / Kratos 登录页面?的主要内容,如果未能解决你的问题,请参考以下文章
如何将构建限制为仅支持 EN“Microsoft.Expression.Interactions.resources.dll”,并避免 DE、KR、FR、ES 等...?