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

监控视频怎么做直播网站企业只有建立了自己的网站

监控视频怎么做直播网站,企业只有建立了自己的网站,信息流推广什么意思,杭州公司排名建筑物身份管理#xff0c;包括身份验证和授权#xff1f; 尝试Stormpath#xff01; 我们的REST API和强大的Java SDK支持可以消除您的安全风险#xff0c;并且可以在几分钟内实现。 注册 #xff0c;再也不会建立auth了#xff01; 更新 #xff1a;我们最近发布了对… 建筑物身份管理包括身份验证和授权 尝试Stormpath 我们的REST API和强大的Java SDK支持可以消除您的安全风险并且可以在几分钟内实现。 注册 再也不会建立auth了 更新 我们最近发布了对Stormpath Spring Security集成的修订。 您不再需要从特殊的Stormpath安全配置器适配器继承。 而是使用Stormpath DSL特定于域的语言。 看下面看这有多容易。 ♥在Stormpath我们♥Spring Boot。 构建丰富的Java Web应用程序变得如此轻松有趣。 我们对最新的Java SDK版本感到非常兴奋其中包括对我们的Spring Security和Spring Boot支持的重大改进。 如果您以前曾经构建过Web应用程序那么您将知道所有“用户资料”都是您的头疼。 Stormpath为开发人员提供了开箱即用的所有“用户资料”因此您可以继续真正关心的是您的应用程序 到本教程完成时我保证不到15分钟您将拥有一个可以正常运行的Spring Boot Web应用程序该应用程序可以通过Spring Security保护用户对受限路径的访问并得到Stormpath的支持。 我们将专注于我们的Spring Boot集成以推出一个简单的Spring Boot Web应用程序该应用程序具有完整的用户注册和登录系统并具有以下功能 登录和注册页面 密码重置工作流程 根据组成员身份限制访问 能够轻松启用Java库中的其他Stormpath功能API身份验证SSO社交登录等的功能 在本演示中我们将使用stormpath-default-spring-boot-starter 。 它的模块化设计在Spring Boot 1.3.0和Spring Security 4.0.3以及Spring Boot WebMVC和Thymeleaf模板引擎中得到了体现。 我将使用Mac终端应用程序和IntelliJ IDE。 本教程的所有代码都可以在这里找到。 在整个文章中您可以通过单击Deploy to Heroku按钮来查看示例代码。 您需要做的就是注册一个免费的Heroku帐户。 什么是暴风雨 Stormpath是一项API服务允许开发人员创建编辑和安全地存储 用户帐户和用户帐户数据并将它们与一个或多个应用程序连接。 我们的API使您能够 验证和授权用户 存储有关您的用户的数据 执行密码和基于社交的登录 发送密码重置消息 发行基于API的Web应用程序的API密钥 以及更多 查看我们的产品文档 简而言之我们使用户帐户管理变得更加轻松安全和更多 可扩展性比您可能习惯的高。 准备开始了吗 在此处注册免费的开​​发者帐户。 启动您的Spring Boot项目 有您的Stormpath开发者帐户 大 让我们开始吧… 无论你是一个Maven 的Maven或摇篮克里特 让您的项目设置是一个单元。 这是一个以pom.xml开头的文件 project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.stormpath.sample/groupIdartifactIdstormpath-spring-boot-spring-security-tutorial/artifactIdversion0.1.0/versionnameSpring Boot Spring Security Stormpath Tutorial/namedescriptionA simple Spring Boot Web MVC application with Spring Security and out-of-the-box login and self-service screens!/descriptiondependenciesdependencygroupIdcom.stormpath.spring/groupIdartifactIdstormpath-default-spring-boot-starter/artifactIdversion1.0.RC6/version/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion1.3.0.RELEASE/versionexecutionsexecutiongoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build/project 而且这是一个以以下内容开头的build.gradle文件 buildscript {repositories {mavenCentral()}dependencies {classpath(org.springframework.boot:spring-boot-gradle-plugin:1.3.0.RELEASE)} }apply plugin: java apply plugin: maven apply plugin: spring-bootgroup com.stormpath version 0.1.0repositories {mavenCentral() }dependencies {compile group: com.stormpath.spring, name: stormpath-default-spring-boot-starter, version:1.0.RC6 } 您可能会注意到对于Maven和Gradle来说都存在一个依赖关系 stormpath-default-spring-boot-starter 。 对。 而已。 正如您将在下面看到的那样一个依赖项立即为您提供了所有的Spring BootSpring Security和Stormpath魔术。 收集您的API凭证和应用程序参考 应用程序和Stormpath之间的连接通过“ API密钥对”进行保护。 您将提供这些密钥 到您的Web应用程序并且在与Stormpath通信时将使用它们。 您可以从管理控制台下载API密钥对。 登录后您可以从主页下载API密钥对它将下载apiKey.properties文件-我们稍后将使用它。 在管理控制台中时您要获取默认Stormpath应用程序的href。 在Stormpath中Application对象用于将Web应用程序链接到Stormpath中的用户存储。 所有新的开发人员帐户都有一个名为“我的应用程序”的应用程序。 在管理控制台中单击“应用程序”然后单击“我的应用程序”。 在该页面上您将看到应用程序的Href。 复制它-我们稍后将需要它。 编写Spring Boot应用程序 该部分的代码可以在代码库的LockedDown标记中找到。 我们需要三个小的Java类和一个html模板来启动Webapp的第一个版本。 它们足够小我会把它们放在这里。 让我们开始吧 Spring Boot应用程序入口点 所有的Spring Boot应用程序都有一个入口点其作用与普通的Java程序相同。 它具有main方法和所有内容。 这是Application.java SpringBootApplication public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);} } 6行代码包括SpringBootApplication批注拉开了序幕。 Spring安全配置 默认情况下以及最佳安全实践Spring Security会锁定整个应用程序。 它将其锁定到甚至无法访问的地步 尽管这符合最佳安全性实践但并不是很有用。 另外我们需要将Spring Security和Stormpath挂钩。 这将我们带到我们的SpringSecurityWebAppConfig.java Configuration public class SpringSecurityWebAppConfig extends WebSecurityConfigurerAdapter {Overrideprotected void configure(HttpSecurity http) throws Exception {http.apply(stormpath());} } Configuration注释使Spring Boot将该类实例化为配置。 .apply(stormpath())将所有Stormpath优点身份验证和授权工作流程挂接到Spring Security中。 因为configure方法中没有进一步的配置所以我们仍然会看到将所有内容锁定的默认行为。 但是我们将看到默认的Stormpath流程而不是默认的Spring Security身份验证流程。 也就是说尝试浏览到应用程序中的任何路径将导致重定向到Stormpath login页面。 因此一个1行的方法调用就可以保证安全 Spring WebMVC紧密联系在一起 我们上面的安全性配置可确保保护应用程序中的所有路径。 控制器确定请求的路径如何定向以显示哪些模板。 这是我们的HelloController.java Controller public class HelloController {RequestMapping(/)String home() {return home;} } Controller注释Controller Spring Boot这是一个控制器。 我们在第3行/上定义了一个路径。 第5行返回Thymeleaf模板命名为home 。 7行代码我们有模型-视图-控制器MVC路由。 带我们 默认情况下Thymeleaf模板引擎将在类路径中名为templates的文件夹中查找从控制器返回的templates 。 它还将寻找.html的默认扩展名。 因此当上述控制器返回home Thymeleaf将在resources/templates/home.html找到模板。 让我们看一下home.html文件 html xmlns:thhttp://www.thymeleaf.orghead!--/*/ th:block th:includefragments/head :: head/ /*/--/headbodydiv classcontainer-fluiddiv classrowdiv classbox col-md-6 col-md-offset-3div classstormpath-headerimg srchttp://stormpath.com/images/template/logo-nav.png//divh1 th:inlinetextHello, [[${account.fullName}]]!/h1a th:href{/logout} classbtn btn-dangerLogout/a/div/div/div/body /html 第1行为Thymeleaf设置了th名称空间。 第3行看起来像html / xml注释。 但是这是Thymeleaf接受的指令以在此模板中包含片段。 该片段位于 resources/templates/fragments/head.html 。 该片段包含所有要挂接到Bootstrap样式中的视图的设置。 第13和14行是操作所在的位置。 由于应用程序中的每条路径均已锁定因此我们知道进入此页面的唯一方法是登录后。Stormpath的神奇之处在于一旦登录 account对象就始终在您的视图范围内。 第13行显示已登录用户的全名。 第14行提供了单击后注销的链接。 有关使用Thymeleaf模板的更多信息请单击此处 。 让我们火起来 创建一个Stormpath帐户15行Java代码和19行HTML模板代码其中3行非常重要使我们到达了受Spring Security保护并受Stormpath支持的功能齐全的Spring Boot WebMVC应用程序的地步。 如果您以前将apiKey.properties文件存储在标准位置 ~/.stormpath/apiKey.properties并且只有为您创建的默认Stormpath应用程序则无需其他配置即可启动该应用程序。 这是Maven的方式 mvn clean package mvn spring-boot:run 注意由于存在repackage执行 spring-boot-maven-plugin还会创建一个uber-jar。 您可以通过运行java来行使相同的代码 mvn clean package java -jar target/*.jar 这是Gradle的方式 gradle clean build java -jar build/libs/*.jar 真 是吗 对 您可以浏览到http// localhost8080 /并查看其运行情况。 如果您将apiKey.properties文件存储在其他位置或者定义了其他Stormpath应用程序怎么办 没问题 还记得您之前保存的Application Href吗 我们现在将使用它。 这是Maven的方式 mvn clean package STORMPATH_API_KEY_FILE~/.stormpath/apiKey.properties \ STORMPATH_APPLICATION_HREFhttps://api.stormpath.com/v1/applications/4YHCurbtcaFC4TKKsd3AYQ \ mvn spring-boot:run 这是Gradle的方式 gradle clean build STORMPATH_API_KEY_FILE~/.stormpath/apiKey.properties \ STORMPATH_APPLICATION_HREFhttps://api.stormpath.com/v1/applications/4YHCurbtcaFC4TKKsd3AYQ \ java -jar build/libs/*.jar 通过将STORMPATH_API_KEY_FILE和STORMPATH_APPLICATION_HREF环境变量添加到命令行我们可以轻松地告诉我们的应用程序在哪里可以找到api键以及要使用哪个Stormpath应用程序。 Stormpath Java SDK具有极其灵活的配置机制。 当我们开始限制Stormpath Group成员对您的应用程序的访问时我们将在下面看到更多内容。 使用Spring Security完善的访问控制 该部分的代码可以在代码库的BasicAccessControl标记中找到。 在上一节中我们创建了一个紧密锁定的应用程序。 每个路径包括/ 都要求您首先登录。 也许您想要一个可公开访问的主页。 也许您希望网站的某些部分可以被任何经过身份验证的用户访问而站点的另一部分则只能包含属于特定组的成员。 我们将在本节中探索那些细粒度的控件。 我们将从允许公众访问主页开始。 用户仍然必须进行身份验证才能访问任何其他页面。 Spring安全门口的保镖 还记得以前的空SpringSecurityWebAppConfig.java吗 我们现在将添加一些东西 Configuration public class SpringSecurityWebAppConfig extends WebSecurityConfigurerAdapter {Overrideprotected void configure(HttpSecurity http) throws Exception {http.apply(stormpath()).and().authorizeRequests().antMatchers(/).permitAll();} } Spring Security提供了一个流畅的界面来提供访问规则。 在上面的5-8行中我们正在建立一个规则集该规则集关于Spring Security如何允许访问我们的应用程序。 您可以用简单的英语来表示 Permit anyone to go to the front door Ensure that theyve authenticated for anything else 我们指定的规则优先于锁定所有内容的默认行为。 让我们也更新我们的home.html模板 html xmlns:thhttp://www.thymeleaf.orghead!--/*/ th:block th:includefragments/head :: head/ /*/--/headbodydiv classcontainer-fluiddiv classrowdiv classbox col-md-6 col-md-offset-3div classstormpath-headerimg srchttp://stormpath.com/images/template/logo-nav.png//div!--/* displayed if account IS NOT null, indicating that the user IS logged in */--div th:if${account}h1 th:inlinetextHello, [[${account.fullName}]]!/h1a href/restricted classbtn btn-primaryRestricted/aa th:href{/logout} classbtn btn-dangerLogout/a/div!--/* displayed if account IS null, indicating that the user IS NOT logged in */--div th:unless${account}h1Who are you?/h1a href/restricted classbtn btn-primaryRestricted/a/div/div/div/div/body /html 请注意我们现在有两个不同的部分。 第一个从第13行开始如果用户已登录则显示第一个。 如果用户未登录则显示从第20行开始的第二部分。 这是正在运行的Thymeleaf模板。 它提供了非常强大的控件可有条件地显示模板的各个部分。 在进行任何其他更改之前让我们在这里暂停并像以前一样启动应用程序。 当浏览到http// localhost8080时 您将看到home模板的未经身份验证的版本。 单击“ Restricted按钮您将按预期重定向到login表单。 验证之后您将进入404页面因为我们尚未定义受限页面。 让我们对其进行设置以完成本节。 定义受限页面就像在我们的控制器中添加路线并创建要显示的模板一样容易。 这是更新的HelloController.java Controller public class HelloController {RequestMapping(/)String home() {return home;}RequestMapping(/restricted)String restricted() {return restricted;} } 并且这是一个新的restricted.html模板 html xmlns:thhttp://www.thymeleaf.orghead!--/*/ th:block th:includefragments/head :: head/ /*/--/headbodydiv classcontainer-fluiddiv classrowdiv classbox col-md-6 col-md-offset-3div classstormpath-headerimg srchttp://stormpath.com/images/template/logo-nav.png//divh1 th:inlinetext[[${account.fullName}]], You are allowed here./h1a href/ classbtn btn-primaryGo Home/a/div/div/div/body /html 注意我们如何重新使用head片段为该模板提供Bootstrap样式。 再次重新启动该应用程序您将获得完整的体验。 记下主页如何更改具体取决于您是否登录。 通过组成员身份进行Spring Security访问控制 该部分的代码可以在代码存储库的GroupAccessControl标记中找到。 Spring Security提供了一组注释和一种丰富的表达语言用于控制对应用程序中方法的访问。 PreAuthorize是最常用的Spring Security批注。 并且最常用的SpringEL表达式包括hasRole 。 Stormpath集成了将Stormpath组连接到Spring Security角色的机制。 让我们看一下代码然后将其分解。 我们将添加一项新服务以限制组成员身份的访问。 这是AdminService Service public class AdminService {PreAuthorize(hasRole(roles.ADMIN))public boolean ensureAdmin() {return true;} } 上面的第3行是关键。 注释和SpringEL表达式可以用简单的英语表示为 Before this method is even entered, check to see that user is authenticated and is a member of the ADMIN group check to see that user is authenticated的check to see that user is authenticated可能并不明显。 发生的是 PreAuthorize检查只能在经过身份验证的用户上执行。 Spring Security非常聪明可以在检查用户是否是指定组的成员之前检查用户是否已登录。 让我们深入探讨上面的Spring Expression Language。 Spring Security在哪里寻找roles.ADMIN 符号是特殊的–它标识Java Bean。 在这种情况下一个名为roles的bean。 我们希望在该bean内定义一个名为ADMIN的常量。 最终 hasRole需要检查代表Stormpath Group的唯一Href。 因此我们的ADMIN常数必须是一个Java String 该String将Href保留到用于管理员的Stormpath组中。 为了完成此配置并使它具有Roles.java动态性我们需要一个名为Roles.java的新类 Component public class Roles {public final String ADMIN;Autowiredpublic Roles(Environment env) {ADMIN env.getProperty(stormpath.authorized.group.admin);} } 这9条线是如此强大我在这里一览无余 让我们深入。 通过在第1行用Component注释此类Spring将实例化它并将其公开为bean。 猜猜豆子的名字是什么 Spring将采用该类的名称并以驼峰式大小写以默认情况下派生Bean名称。 因此bean的名称是roles 。 甜 第5行的Autowired注释使Spring Environment对象传递到构造函数中。 在构造函数内部由于ADMIN已被声明为final 因此我们唯一的机会是对其进行设置-要求能够在hasRoles子句中使用它。 难题的最后一部分利用了一些Stormpath配置魔术。 请注意我们正在将ADMIN的值设置为名为stormpath.authorized.group.admin的环境属性。 这是标准的Spring。 如果您的application.properties文件中有一个具有该名称的属性那么它将在Spring Environment中可用。 Stormpath增加了将其设置为系统环境变量的能力从而无需在应用程序中的任何位置硬编码该值在这种情况下为Stormpath Group Href。 通常系统环境变量全部为大写字母单词之间用下划线分隔。 Stormpath Java SDK自动将这些系统变量转换为小写的点分表示法。 挖这个 STORMPATH_AUTHORIZED_GROUP_ADMINhttps://api.stormpath.com/v1/groups/1wcsYMUZhzytUH5GmdaFXC \ java -jar build/libs/spring-boot-spring-security-tutorial-0.1.0.jar 在后台Stormpath会将STORMPATH_AUTHORIZED_GROUP_ADMIN系统环境变量转换为stormpath.authorized.group.admin环境变量。 这将被我们上面的代码处理。 谁想到只需几行代码就能实现这种魔力 现在我们需要将AdminService到我们的控制器。 这是我们更新的HelloController.java的相关部分 Controller public class HelloController {AutowiredAdminService adminService;...RequestMapping(/admin)String admin() {adminService.ensureAdmin();return admin;} } 在第4行和第5行自动连接AdminService 。请注意在第11行我们正在调用adminService.ensureAdmin方法。 如果已登录的用户ADMIN组中则将生成403 禁止响应。 最后的代码整理工作是创建一个admin.html模板。 在与该帖子相关的代码中有一个简单的admin.html模板该模板显示了格式正确的消息确认您确实是管理员。 现在要查看实际效果您需要在管理控制台中进行一些Stormpath内务处理。 步骤如下 创建一个新的应用程序 为应用程序创建一个名为“ admin”的新组 在管理组中创建一个新帐户 不在管理员组中创建一个新帐户 在与此帖子相关的代码中我还包括了一个方便的错误页面因此如果您不在admin组中那么您将获得格式正确的页面而不是默认的403页面。 让我们来看看它的作用。 我们将像以前一样启动该应用程序只是这一次我们将对在上一步中创建的新应用程序和组使用在管理控制台中找到的Href。 这是Maven的方式 mvn clean package STORMPATH_API_KEY_FILE~/.stormpath/apiKey.properties \ STORMPATH_APPLICATION_HREFhttps://api.stormpath.com/v1/applications/4YHCurbtcaFC4TKKsd3AYQ \ STORMPATH_AUTHORIZED_GROUP_ADMINhttps://api.stormpath.com/v1/groups/1wcsYMUZhzytUH5GmdaFXC \ mvn spring-boot:run 这是Gradle的方式 gradle clean build STORMPATH_API_KEY_FILE~/.stormpath/apiKey.properties \ STORMPATH_APPLICATION_HREFhttps://api.stormpath.com/v1/applications/4YHCurbtcaFC4TKKsd3AYQ \ STORMPATH_AUTHORIZED_GROUP_ADMINhttps://api.stormpath.com/v1/groups/1wcsYMUZhzytUH5GmdaFXC \ java -jar build/libs/spring-boot-spring-security-tutorial-0.1.0.jar 浏览到/admin页面。 如果您以在Stormpath admin组在我的情况下为micahadminstormpath.com中创建的用户身份登录则可以访问管理页面。 如果您以创建的用户身份登录而该用户不在Stormpath admin组中在我的情况下为micahuserstormpath.com则将显示禁止页面。 无论您以谁身份登录都可以像我们之前设置的那样访问/restricted页面。 包起来 好吧我们在这里涵盖了很多领域不是吗 我们看到了如何保护单个页面以及如何基于组中的成员资格来保护方法。 我们看到了如何在你的类它扩展应用 Stormpath WebSecurityConfigurerAdapter定义不同的路径访问控制以及利用Spring安全的PreAuthorize注释控制的更细的晶粒。 我们看到了Stormpath Java SDK管理环境配置属性以为您的应用程序提供高度灵活性而无需进行任何硬编码的几乎神奇的方式。 Java SDK和Spring Boot集成中还有许多功能。 在此处查看深入的教程。 随时随地提供支持或亲自给我 。 建筑物身份管理包括身份验证和授权 尝试Stormpath 我们的REST API和强大的Java SDK支持可以消除您的安全风险并且可以在几分钟内实现。 注册 再也不会建立auth了 翻译自: https://www.javacodegeeks.com/2016/06/simple-web-app-spring-boot-spring-security-stormpath-15-minutes.html
http://www.pierceye.com/news/758364/

相关文章:

  • 手表网站背景素材玉山网站建设
  • 增城新塘网站建设温州网站推广效果
  • 东莞市住房建设局网站编程能干什么
  • asp做一个简单网站推广图片素材
  • 新网站一直不被收录wordpress 视频 广告
  • 网站建设费账务处理一个小胖子从网站做任务的网站故事
  • 国外被墙网站东营建设信息网最新消息
  • iphone下载网页视频北京百度seo排名公司
  • 怎么自己做网站免费的衡阳seo网站推广
  • 一键生成论文的网站做亚马逊有哪些网站可以清货
  • 一屏网站模板下载 迅雷下载 迅雷下载地址网站建设合并但与那个
  • 营销型网站四大功能吉林市网站制作
  • 如何制作钓鱼网站网页制作基础教程9787121095306教案
  • 专业定制网站企业吉林省住房城乡建设厅网站首页
  • 免费高清素材网站方维网络科技有限公司
  • 长春行业网站重庆智能建站模板
  • 北湖区网站建设公司wordpress的cute主题
  • 沈阳网站建设 景乔科技网站制作杭州
  • 网站维护工程师月薪多少精品网站建设公
  • 永久免费企业网站申请网站开发主框架一般用什么布局
  • 网站做非经营性广告需备案python免费看电影的应用
  • 网站分哪些种类自己做网站模版
  • 汪峰做的音乐网站长沙制作公园仿竹护栏实体厂家
  • 深圳专业网站建设公司排名好的h5网站模板
  • h5做网站教程网店营销的推广方法有哪些
  • 网站关键词快速排名工具wordpress子主题
  • 做百度网站那家好google 网站质量问题
  • 网站建设维护书网站资料清单
  • 网站建设公司 深圳信科网站维护计划
  • 做网站用什么语言比较简单网站seo优化总结