当前位置: 首页 > news >正文

物流企业网站建设外国网站的浏览器

物流企业网站建设,外国网站的浏览器,wordpress 后台主题,wordpress文字转图插件java oauth2.0使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证#xff0c;管理和保护。 今天尝试Okta。 现代应用程序依赖于用户身份验证#xff0c;但是它可能给Java开发人员带来困难的挑战#xff0c;以及… java oauth2.0 使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证管理和保护。 今天尝试Okta。 现代应用程序依赖于用户身份验证但是它可能给Java开发人员带来困难的挑战以及一系列特定于框架的选项供您选择。 我们已经看到许多Spring开发人员从一个简单的本地身份验证服务开始他们计划用一个更强大的选项替换“后来的”……只是为了让该本地服务将其方式扩展到堆栈中的永久位置。 为了结束这一令人心碎的循环这篇文章将展示即使在一个简单的应用程序中实现企业级身份验证服务也是如此简单。 在本教程中您将创建一个显示用户信息的应用程序。 您将首先手动配置它以查看其缺点。 然后我们将使用更专业的方法。 在本教程结束时您将拥有一个基于Spring的Java应用程序该应用程序使用OAuth 2.0对用户进行身份验证并且需要5分钟的时间进行这些更改 使用Spring创建Java应用程序 让我们从创建项目结构开始。 您将使用Spring Initializer创建应用程序。 转到start.spring.io并填写以下信息 项目 Maven项目 语言 Java 组 com.okta.authorizationapp 工件 oauth 依存关系 Spring网 您也可以从命令行生成项目。 将以下命令粘贴到终端中以使用与上述相同的配置下载项目 curl https://start.spring.io/starter.zip \-d dependenciesweb,thymeleaf,security \-d packageNamecom.okta.authorizationapp \-d nameauthorization-app \-d typemaven-project \-o java-authorization-app.zip 而已 现在您的Java项目结构已创建您可以开始开发应用程序了。 自行构建用户安全性 本教程将使用Maven但您可以根据需要轻松使用Gradle进行操作。 首先将项目导入您喜欢的IDE /编辑器中。 现在您的项目只有一个类即引导应用程序的stylefont-size:13px classhighlighter-rougeAuthorizationAppApplication 。 运行此类时服务器将启动并且可以转到浏览器以查看结果。 但是您首先需要一个页面才能访问因此让我们创建一个主页。 内部stylefont-size:13px classhighlighter-rougesrc/main/java/com/okta/authorizationapp/controller/创建类stylefont-size:13px classhighlighter-rougeHomeController Controller public class HomeController {private MapString, LocalDateTime usersLastAccess new HashMap();GetMapping(/)public String getCurrentUser(AuthenticationPrincipal User user, Model model) {String username user.getUsername();model.addAttribute(username, username);model.addAttribute(lastAccess, usersLastAccess.get(username));usersLastAccess.put(username, LocalDateTime.now());return home;} } 此类定义了/路径的控制器。 当您在未定义任何其他路径的情况下访问应用程序时将执行此代码。 控制器的第一个重要操作将检索当前用户的信息。 由于您使用AuthenticationPrincipal注释了user属性因此Spring Security将自动检索此信息。 控制器还接收一个model参数该参数存储用于呈现页面的数据。 现在此数据是username和用户上次访问您的应用程序的时间。 在用户登录时创建动态消息 最后一步是更新用户的上次访问日期并定义应呈现请求HTML模板。 在您的情况下端点称为home 。 Spring将在src/main/resources/templates文件夹中搜索home.html文件。 您还没有此文件所以让我们去创建它 htmlheadtitleJava OAuth 2.0 Tutorial - Homepage/title/headbodyh1 th:textWelcome, ${username} !/h1ulli th:if${lastAccess} th:textLast access: ${lastAccess}/li/ul/body /html 这是一个HTML文件由Thymeleaf稍作更改 Thymeleaf是您在创建项目时导入的库之一。 Thymeleaf从服务器接收模型对象并以HTML呈现该对象的值。 只需键入${variable}即可引用model对象中的变量。 通过th:text属性您可以在HTML元素中定义动态文本。 在这里我们使用它来显示动态问候语以及用户上次访问该应用程序的时间。 用户首次访问您的应用时不会记录任何先前的访问。 为了确保您不会出现无意义的字段请使用th:if 。 如果该字段为null 则不会呈现li标签并且用户将看不到它。 将基本登录添加到Java Spring应用程序 现在有了端点您只需要为应用程序添加安全性即可。 在src/main/javacom/okta/authorizationapp/configuration/创建类SecurityConfiguration EnableWebSecurity public class SecurityConfiguration extends WebSecurityConfigurerAdapter {private PasswordEncoder passwordEncoder new BCryptPasswordEncoder();Overrideprotected void configure(AuthenticationManagerBuilder auth) throws Exception {auth.inMemoryAuthentication().passwordEncoder(passwordEncoder()).withUser(john.doe).password(passwordEncoder().encode(secret)).roles(USER);}Beanpublic PasswordEncoder passwordEncoder() {return passwordEncoder;} } 此类将确保用户必须登录才能访问您的应用程序。 目前只有一个名为john.doe用户可以登录该应用程序。 通过调用AuthorizationAppApplication内部的main方法来运行应用程序。 您也可以从命令行运行它。 在项目文件夹中运行以下命令 mvn spring-boot:run 当您访问http://localhost:8080 应该看到以下登录页面 键入john.doe和secret作为用户名和密码。 您应该被重定向到主页。 第一次访问时只有Welcome, john.doe! 将显示。 在第二次访问中您还应该看到最后一次访问 现在您有了一个管理安全性的应用程序。 做得好 但是有一个大问题……现在您只能以一个用户身份登录。 更糟糕的是用户信息被硬编码在您的应用程序中。 为了简化用户访问和安全性您可以使用Okta来管理身份验证。 它将在5分钟内为您提供一种非常简单的方法来与OAuth 2.0集成。 让我们在示例应用中配置OAuth 2.0以了解它的简易性。 首先创建一个Okta帐户。 创建一个Okta帐户 如果您没有Okta帐户 请继续创建一个 。 注册后请执行以下步骤 登录到您的帐户 单击应用程序 添加应用程序 您将被重定向到以下页面 选择网站 然后单击下一步。 在表格中填写以下选项 名称 hello-world 基本URI http://localhost:8080 登录重定向URL http://localhost:8080/login/oauth2/code/okta 允许的授予类型 客户凭证 单击完成 。 现在您可以使用Okta应用程序对应用程序的用户进行身份验证。 使用OAuth 2.0一种快速专业的方法 首先将Okta的库添加到您的项目中。 转到pom.xml并添加Okta的Spring Boot启动器 dependencygroupIdcom.okta.spring/groupIdartifactIdokta-spring-boot-starter/artifactIdversion1.3.0/version /dependency Okta将管理您的应用程序身份验证因此您可以删除SecurityConfiguration类。 在HomeController 进行以下更改 GetMapping(/) public String getCurrentUser(AuthenticationPrincipal OidcUser user, Model model) {String email user.getEmail();model.addAttribute(email, email);model.addAttribute(lastAccess, usersLastAccess.get(email));model.addAttribute(firstName, user.getGivenName());model.addAttribute(lastName, user.getFamilyName());usersLastAccess.put(email, LocalDateTime.now());return home; } 您的端点现在将收到与OAuth 2.0兼容的OidcUser 。 此类提供了比以前更多的用户信息因此您可以修改HTML以显示它。 用email替换username 并添加firstName和lastName 这是您之前没有的字段。 为此请转到hello.html并进行以下更改 bodyh1 th:textWelcome, ${email} !/h1ulli th:if${lastAccess} th:textLast access: ${lastAccess}/lili th:if${firstName} th:textFirst name: ${firstName}/lili th:if${lastName} th:textLast name: ${lastName}/li/ul /body 您仍然像以前一样向用户打招呼但同时还显示来自端点的新信息。 您已经对所有代码进行了更改现在只需要添加一些配置即可。 使用以下环境变量在应用程序的根目录中创建okta.env文件。 export OKTA_OAUTH2_ISSUERhttps://{yourOktaDomain}/oauth2/default export OKTA_OAUTH2_CLIENT_ID{CLIENT_ID} export OKTA_OAUTH2_CLIENT_SECRET{CLIENT_SECRET} 您可以从Okta信息中心的应用程序页面中找到{CLIENT_ID}和{CLIENT_SECRET} 。 要访问它请按照以下步骤操作 在您的Okta仪表板中转到“ 应用程序” 选择hello-world应用程序 单击常规选项卡 您应该在“客户端凭据”区域中看到两个值。 您的{yourOktaDomain}将显示在Okta仪表板中只需单击菜单中的“ 仪表板 ”即可。 您将在右上角看到组织URL。 将这些值粘贴到okta.env 运行以下命令以启动应用程序。 source okta.env mvn spring-boot:run 而已 启用OAuth 2.0登录到您的Spring应用程序 导航到http://localhost:8080 。 您的应用程序会将您重定向到Okta的登录页面 登录后您将被重定向到您的应用程序并看到以下消息 你完成了 在5分钟内您只需很少的配置即可在应用程序中添加OAuth 2.0。 了解有关Spring安全性Spring Boot和Java身份验证的更多信息 如果要查看完整的源代码可以在GitHub上访问它。 您是否想全面了解OAuth 2.0和Java 您可能对以下文章感兴趣 Spring Boot登录选项快速指南 具有PreAuthorize的Spring方法安全性 使用Spring Boot Actuator监视Java应用程序 有关此类文章的更多信息 请在Twitter上关注oktadev 。 我们还会定期将截屏视频发布到我们的YouTube频道 。 使用Okta的身份管理平台轻松部署您的应用程序 使用Okta的API在几分钟之内即可对任何应用程序中的用户进行身份验证管理和保护。 今天尝试Okta。 翻译自: https://www.javacodegeeks.com/2019/12/oauth-2-0-java-guide-secure-your-app-in-5-minutes.htmljava oauth2.0
http://www.sadfv.cn/news/185352/

相关文章:

  • 做京东网站需要哪些手续费建设网站运营成本
  • 东莞seo建站视频海报
  • 赤峰做网站哪家好怎样免费做游戏代理
  • 网站开发者兼容模式出错广州新塘网站建设推广公司
  • 做网站策划书房屋装修设计图
  • 成都龙泉工程建设有限公司网站图片设计制作哪个软件好手机
  • 网站建设一定要买数据盘吗滑县住房城乡建设厅门户网站
  • 怎么用织梦做自适应网站怎样做网站公司
  • 网站制作公司怎么样西安优化官网厂家
  • 效果营销型网站建设googleplay
  • 长春市建设技工学校网站赣州睿行网络科技有限公司
  • 网站建设 凡科无锡招聘网最新招聘
  • 网站开发毕业设计指导记录贵阳市城乡建设局网站
  • 江宁区住房和城乡建设局网站北京定制公交app
  • 东莞网站公司排名教务管理系统密码忘记了怎么找回
  • emlog做企业网站网站建设与维护的卷子
  • 游戏咨询网站建设目标是什么生成手机网站
  • 网站做的比较好的公司腾讯广点通广告投放平台
  • 郑州网站建设公司e00免费软件有哪些
  • 网站pv多少可以动漫设计培训机构哪里好
  • 公司网站打开很慢cms系统搭建
  • 中国小康建设网站wordpress 数据库 地址
  • 网站建设哪些网站可以google网站提交入口
  • 宣传的网站开发需要多少钱wordpress进入数据库
  • php众筹网站程序源码唐山做网站公司哪家好
  • 专门做民宿的网站wordpress 公式 文章
  • wordpress整站无法打开wordpress搭建文件下载
  • 锦州网站制作公司平面设计网站模板
  • 合肥肥东网站建设网站建设公司华网天下买赠两年建设公司
  • 整站排名优化品牌科技侠智能锁