跳到主要内容

应用数据结构

介绍​

在 Logto 中,应用 指的是在 Logto 平台上注册的软件程序或服务,并被授予访问用户信息或代表用户执行操作的授权。应用用于识别向 Logto API 发出的请求来源,以及管理用户访问这些应用的认证 (Authentication) 和授权 (Authorization) 过程。

在 Logto 的登录体验中使用应用允许用户从一个位置轻松访问和管理他们授权的应用,并提供一致且安全的认证 (Authentication) 过程。这有助于简化用户体验,并确保只有授权的个人才能访问敏感信息或代表组织执行操作。

应用还用于 Logto 的审计日志中,以跟踪用户活动并识别任何潜在的安全威胁或漏洞。通过将特定操作与特定应用关联,Logto 可以提供有关数据如何被访问和使用的详细见解,使组织能够更好地管理其安全和合规要求。如果你想将你的应用与 Logto 集成,请参阅 Integrate Logto。

属性​

应用 ID​

应用 ID 是一个自动生成的唯一键,用于在 Logto 中标识你的应用,并在 OAuth 2.0 中被引用为 client id。

应用类型​

应用 可以是以下应用类型之一:

  • 原生应用 是在本地环境中运行的应用。例如,iOS 应用,Android 应用。
  • 单页应用 是在网页浏览器中运行的应用,它通过从服务器获取新数据来更新页面,而无需加载整个新页面。例如,React DOM 应用,Vue 应用。
  • 传统 Web 应用 是由 Web 服务器单独渲染和更新页面的应用。例如,JSP,PHP。
  • 机器对机器 (M2M) 应用 是在机器环境中运行的应用,用于直接的服务对服务通信,无需用户交互。

应用密钥​

应用密钥 是用于在认证 (Authentication) 系统中认证应用的密钥,特别是对于私有客户端(传统 Web 和 M2M 应用)作为私有安全屏障。

应用名称​

应用名称 是应用的可读名称,将显示在管理控制台中。

应用名称 是在 Logto 中管理应用的重要组成部分,因为它允许管理员轻松识别和跟踪平台内各个应用的活动。

备注:

需要注意的是,应用名称 应该被仔细选择,因为它将对所有有权访问管理控制台的用户可见。它应该准确反映应用的目的和功能,同时易于理解和识别。

描述​

应用的简要描述将显示在管理控制台的应用详情页面上。描述旨在为管理员提供有关应用的附加信息,例如其目的、功能和任何其他相关细节。

重定向 URI​

重定向 URI 是为应用预先配置的一组有效重定向 URI。当用户登录到 Logto 并尝试访问应用时,他们将被重定向到应用设置中指定的允许 URI 之一。

允许的 URI 列表用于验证应用在认证 (Authentication) 过程中发送给 Logto 的授权请求中包含的重定向 URI。如果授权请求中指定的重定向 URI 与应用设置中的允许 URI 之一匹配,则用户在成功认证 (Authentication) 后将被重定向到该 URI。如果重定向 URI 不在允许列表中,用户将不会被重定向,认证 (Authentication) 过程将失败。

备注:

确保所有有效的重定向 URI 都被添加到 Logto 中应用的允许列表中,以确保用户在认证 (Authentication) 后能够成功访问应用。

你可以查看 Redirection endpoint 以获取更多信息。

理解 OIDC 中的重定向 URI 与授权代码流程

注销后重定向 URI​

注销后重定向 URI 是为应用预先配置的一组有效 URI,用于在用户从 Logto 注销后重定向用户。

使用允许的 注销后重定向 URI 进行注销是 OIDC 中 RP 发起(依赖方发起)注销规范的一部分。该规范为应用提供了一种标准化的方法来为用户发起注销请求,其中包括在用户注销后将其重定向到预先配置的端点。

当用户从 Logto 注销时,他们的会话将被终止,并被重定向到应用设置中指定的允许 URI 之一。这确保了用户在注销后仅被引导到授权和有效的端点,有助于防止未经授权的访问和与将用户重定向到未知或未经验证的端点相关的安全风险。

你可以查看 RP-initiated logout 以获取更多信息。

CORS 允许的来源​

CORS(跨域资源共享)允许的来源 是一组允许的来源,应用可以从这些来源向 Logto 服务发出请求。任何不在允许列表中的来源将无法向 Logto 服务发出请求。

CORS 允许的来源列表用于限制来自未经授权域的 Logto 服务访问,并帮助防止跨站请求伪造 (CSRF) 攻击。通过在 Logto 中为应用指定允许的来源,服务可以确保只有授权的域能够向服务发出请求。

备注:

允许的来源列表应包含应用将被服务的来源。这确保了来自应用的请求被允许,而来自未经授权来源的请求被阻止。

OpenID 提供商配置端点​

OpenID Connect 发现 的端点。

授权端点​

授权端点 是一个 OIDC 术语,是用于启动用户认证 (Authentication) 过程的必需端点。当用户尝试访问已在 Logto 平台上注册的受保护资源或应用时,他们将被重定向到 授权端点 以认证 (Authentication) 其身份并获得访问请求资源的授权 (Authorization)。

你可以查看 Authorization Endpoint 以获取更多信息。

令牌端点​

令牌端点 是一个 OIDC 术语,是一个 Web API 端点,OIDC 客户端用于从 OIDC 提供者获取访问令牌、ID 令牌或刷新令牌。

当 OIDC 客户端需要获取访问令牌或 ID 令牌时,它会向令牌端点发送一个包含授权 (Authorization) 授权的请求,通常是授权代码或刷新令牌。令牌端点验证授权 (Authorization) 授权,如果授权有效,则向客户端颁发访问令牌或 ID 令牌。

你可以查看 Token Endpoint 以获取更多信息。

用户信息端点​

OpenID Connect 用户信息端点。

始终颁发刷新令牌​

可用性:传统 Web,SPA

启用后,Logto 将始终颁发刷新令牌,无论认证 (Authentication) 请求中是否出现 prompt=consent,也无论权限 (Scopes) 中是否出现 offline_access。

然而,除非必要(通常对某些需要刷新令牌的第三方 OAuth 集成有用),否则不建议这样做,因为这与 OpenID Connect 不兼容,可能会导致问题。

刷新令牌轮换​

默认:true

启用后,Logto 将在以下条件下为令牌请求颁发新的刷新令牌:

  • 如果刷新令牌已被轮换(通过颁发新令牌延长其 TTL)一年;或
  • 如果刷新令牌接近其过期时间(>=70% 的原始生存时间 (TTL) 已过);或
  • 如果客户端是公共客户端,例如原生应用或单页应用 (SPA)。
备注:

对于公共客户端,当启用此功能时,每当客户端使用刷新令牌交换新访问令牌时,都会颁发一个新的刷新令牌。 虽然你仍然可以为这些公共客户端关闭此功能,但强烈建议出于安全原因保持启用。

理解刷新令牌轮换

刷新令牌生存时间 (TTL)(天)​

可用性:非 SPA;默认:14 天

刷新令牌在过期并失效之前可用于请求新访问令牌的持续时间。令牌请求将刷新令牌的 TTL 扩展到此值。

通常,较低的值是首选。

注意:出于安全原因,SPA(单页应用)中不提供 TTL 刷新。这意味着 Logto 不会通过令牌请求来扩展 TTL。为了增强用户体验,你可以启用“刷新令牌轮换”功能,允许 Logto 在必要时颁发新的刷新令牌。

后端注销 URI​

OpenID Connect 后端注销端点。有关更多信息,请参阅 Federated sign-out: Back-channel logout。

自定义数据​

未列在预定义应用属性中的其他自定义应用信息,用户可以根据其特定需求定义自己的自定义数据字段,例如业务特定的设置和配置。