搜索

第 6 章 Eclipse Vert.x 身份验证和授权的更改

download PDF

以下小节描述了 Eclipse Vert.x 身份验证和授权的更改。

Eclipse Vert.x 验证模块在 Eclipse Vert.x 4 中有重大更新。io.vertx.ext.auth.AuthProvider 接口被分成两个新接口:

  • io.vertx.ext.auth.authentication.AuthenticationProvider

    重要

    身份验证功能仅作为技术预览提供。技术预览功能不包括在红帽生产服务级别协议(SLA)中,且其功能可能并不完善。因此,红帽不建议在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

    有关技术预览功能支持范围 的信息,请参阅红帽客户门户网站中的技术预览功能支持范围。

  • io.vertx.ext.auth.authorization.AuthorizationProvider

在这个版本中,任何供应商都可以独立执行身份验证和授权。

6.1. 迁移身份验证应用程序

在结果级别上更改了验证机制。在以前的版本中,结果是 User 对象,它是特定于供应商的。在 Eclipse Vert.x 4 中,结果是对 io.vertx.ext.auth.User 的常见实现。

以下示例演示了如何在 Eclipse Vert.x 3.x 版本中验证用户。

JsonObject authInfo = new JsonObject()
  .put("username", "john")
  .put("password", "super$ecret");

// omitting the error handling for brevity
provider.authenticate(authInfo, res -> {
   if (res.succeeded()) {
     // may require type casting for example on Oauth2
     User user = res.result();
   }
});

以下示例演示了如何在 Eclipse Vert.x 4 中验证用户身份。

JsonObject authInfo = new JsonObject()
  .put("username", "john")
  .put("password", "super$ecret");

// omitting the error handling for brevity
provider.authenticate(authInfo, res -> {
   if (res.succeeded()) {
     // Never needs type casting
     User user = res.result();
   }
});
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.