0

我正在对客户端进行安全扫描,并观察到他们已经实现了 OpenID。在阅读时,我了解到这个 URL .well-known/openid-configuration,它有大量的信息(端点-{授权、连接、用户信息、jwks}、范围等)公开。

我在这里有两个问题:

  1. 将这些信息公开是安全问题吗?有没有办法只提供给所需的用户。
  2. 我是 OpenID 连接的新手,这是一篇实现自定义 OpenID 服务器的简单而好文章。
4

1 回答 1

0
  1. 如果外部世界(例如移动应用程序)需要,公开元数据是非常标准的。它的主要用途是客户端应用程序中的安全库,以查找其他端点,以进行授权和令牌发布。

如果您没有 Internet 客户端,那么某些提供商将允许您关闭端点,或仅通过内部网络公开它。通常避免暴露更敏感的数据,例如自定义声明和范围。

  1. 通常使用基于标准的免费服务器而不是实现 OpenID 服务器,然后专注于集成 UI 和 API。那里有很多工作,因为 OAuth 非常具有架构性。

在 Curity,我们有一个功能齐全的免费版本,快速入门的方法是通过docker 教程。然后登录开发者门户并下载许可文件。

运行安装后,您可以浏览到这些 URL。然后专注于集成您的应用程序:,

  • http://localhost:6749/admin
  • http://localhost:8443/oauth/v2/oauth-anonymous/.well-known/openid-configuration

或者选择另一个提供商 - 并遵循使用大型构建块的相同方法。

于 2021-05-17T16:47:44.013 回答