Jeff Taylor高级产品经理,Bharat Bhat市场营销主管开发者关系

在这个演示密集的会议中,我们将介绍新的开发者版,并探讨Okta如何使所有开发人员更容易地保护应用程序,保护api,并插入DevOps自动化。

加入我们,我们将向您展示下一代Auth工具。

视频记录

大家好,感谢大家今天的到来。我是Bharat Bhat,在Okta负责开发者关系营销。我们很高兴来到SwampUP,今天我们邀请了Stephen Chin加入我们。我现在把它交给他,让我们开始吧。嘿,Bharat,非常感谢你的介绍,正如我们昨天在主题演讲中所展示的,对于SwampUP来说,拥有一个合作伙伴的生态系统,可以为你的整个DevOps管道提供更好的价值,这对整个DevOps社区和我们所有客户的成功至关重要关于如何更好地集成协作工具、可观察性工具和ITSM工具,我认为这是基础设施的关键部分,我们实际上没有讨论过,这个会议将专门讨论如何更好地在整个DevOps管道中集成身份验证。这包括从工件管理到能够识别和认证在管道中提交版本的开发人员以进行审批,然后弄清楚如何安全地将内容推送到下一阶段,分发,在分发内容之前您可以拥有应用程序标识符,一直到访问拥有单个窗格来查看整个DevOps管道。所以我认为JFrog平台与Okta合作的故事是我们合作伙伴战略中非常令人兴奋的一部分。我很高兴你们能邀请我参加这次关于认证的会议谢谢巴拉特和杰夫。

谢谢你,史蒂夫。我们很高兴来到这里,也很高兴能成为合作伙伴。你知道,在Okta,在过去的6-8个月里,我们谈论了很多关于开发者的重要性,开发者已经变得非常重要。你知道,他们在一个组织的各个部分都有非常重要的影响力,是当今商业成功不可或缺的一部分。不管你在哪个行业或垂直领域。开发人员在构建新的应用程序和体验以及推动创新方面发挥着重要作用。

他们可能并不总是掌握预算的人,但他们的意见越来越重要。在Okta,我们希望尽我们所能与他们互动,并在他们使用我们的技术时创造出色的开发体验。但是你知道,你们大多数人都加入了,你知道,今天的开发者有很多事情要做。而且,你知道,他们被要求为企业和客户解决越来越复杂的问题。他们被要求快速完成。这就是为什么我们重新构想Okta开发者平台和Okta开发者体验,以加快整个应用开发者生命周期和整个开发者工具链的生产时间。

我们已经推出了新的开源工具,并与应用生成器(如J hipster)、Heroku等平台以及Kong等API网关进行了更紧密的集成,这样一来,旅程的每一步都可以更快、更大规模地完成。这包括我们在JFrog上做的自动化工作。我们的目标是满足开发人员的需求,而不是让他们先学习身份的所有细微差别,然后再发现多久能提供帮助。我们想从一开始就提供帮助。我们还希望确保开发人员在遇到困难时能够获得所需的帮助,因此我们加强了专门的开发人员支持和社区,其中包括最流行语言和框架的专家,以便他们能够在需要的时候和方式得到答案。

所有这些创新将显著改善我们的开发人员体验,正如大家所知,开发人员正在创建的任何创新或解决方案都必须知道底层技术是安全的。这意味着今天的开发者面临着很多问题,新的业务需求,新的攻击媒介,最新的技术创新都落在了他们的肩上去理解和实现。就像数以百万计的信号进来,你知道,风险。要做到这一点,了解所有这些威胁信号发生了什么当你一个人做的时候,可疑的演员和所有这些都是很难做到的。所以我们正在努力让它变得更容易。

开发人员需要在整个应用程序开发生命周期中实现自动化。就DevOps和CI / CD而言,对于部署来说尤其如此。

我们最近宣布了由产品和工程支持的更新的平台提供商,这样开发人员就可以跨Okta Dev、测试和生产租户推送配置,以支持CI\CD管道的自动化。我们还希望确保组织能够无缝地控制对云原生部署的访问,并为应用程序、api和基础设施提供一个单一的窗格。

为此,今年,我们还整合了CIAM功能或客户身份访问管理功能,为那些越来越多地转向基础设施即代码的组织提供无缝体验。而且,你知道,我们在SwampUP,我们真的想强调,你知道,我们与JFrog非常好的合作伙伴关系,我们正在建立实际上增强一些功能,这些功能是Okta离不开JFrog的,而JFrog,你知道,也离不开我们。那么,关于th,包括th N和th Z。非常复杂或突出的认证和授权用例。因此,我们在CI / CD和DevOps方面与JFrog进行了集成。在API安全方面,我们正在与Kong进行集成,未来,我们也将向更多的云原生和Kubernetes发展。所以期待在接下来的几个月里看到这些东西吧。

正如我经常说的,我们Okta在这里帮助您保护您的应用程序,api和基础设施,以便您可以专注于创新和发展您的业务。现在,我把它交给杰夫,他将向你们展示所有的部分是如何组合在一起的。

谢谢Bharat,重申一下,我们在整个过程中都非常关注开发者,我们在考虑如何利用你在部署和管理应用时所经历的所有开发者旅程步骤。

今年4月,我们发布了一个全新的、功能齐全的开发者版,每月有1.5万名免费活跃用户,目的是让你可以开始运行应用,让你的应用成熟,而不必担心成本问题。

与此同时,我们正在重新设想我们的示例可以帮助您了解如何有效地使用Okta,并了解Okta提供的不同功能如何在您的应用程序工作流中发挥作用。我们还想增强我们的文档来解释一些深层次的概念你需要理解这些概念才能为你的应用做出正确的决定。然后,正如你所提到的,与开发人员工具的集成将使这个旅程更快。在此基础上,随着应用的成熟和变化,再进一步关注应用的成熟度。

使用强大的基础设施作为代码和配置作为类似代码的工具,如terraform,这些工具现在处于早期访问阶段,用于管理所有这些配置。这只是说说而已。让我们来看一下实际操作。我想从一个简单的例子开始,对吧?比如,我们需要建立一个应用程序,我们有一个想法,我们可以建立一个在线小吃菜单。我们想让它快速运行起来。

我们要做的第一件事就是创建一个脚手架,我们要怎么以最快的方式进入市场?

我们可以利用像j hipster这样的快速开发工具,我们可以根据我们认为必要的标准来创建应用程序。

这个工具的一大优点是,它允许您填写一份问卷,其中包含应用程序所需的所有样板文件。

如果你看得很快,当我们建立我们想要应用连接的方式时,我们创建了一个OIDC应用,这只是基于消费者的应用的标准,但你注意到那里有一个Okta的插件和另一个像Kiko的解决方案,你也可以选择你喜欢的前端形式有任何你想要的JavaScript风格react,可能是angular或view。然后你要填写所有你想要的东西看看这个应用是如何创建的。

这里重要的是,如果你想说,我希望我所有的应用都有一个特定的集合,我希望它们有一个管理界面,我希望它们以某种方式配置。jhipster代表了一个工具包,它允许您确保以相同的方式部署所有应用程序。

这允许你在开发一个应用程序和另一个应用程序的开发人员之间无缝转换,因为他们都来自同一个堆栈,甚至这些变化可以被最小化,当你试图管理一个产品套件中可能拥有的所有应用程序时,这些变化会带来很多麻烦。现在我们要做的是完全构建整个东西并启动本地版本的应用程序。正如你在这里看到的,我们正在完成,我们的应用应该最终建成了,从这里开始,到这里结束。现在我们应该可以运行我们的jhipster应用程序了。

我们现在要做的就是部署它。我们将看一下如何使用Heroku进行部署并将其升级到一些生产状态,可能是Dev,但是是在线的我们可以看到它是如何运行的。

有趣的是,在jhipster、Heroku和Okta之间有一个插件。在你做这个之前,大家都知道,auth是我们必须处理的重量级故事之一。我们如何让用户登录?从我在产品方面的经验来看,我们会把它推迟到最后的责任时刻,所以我们真的不必担心它。但正如你在这里看到的,我带着我的凭证,那是在我启动J hipster应用程序时创建的,我正在登录。我还准备了一个Okta插件。所以你在这里看到的是Okta, J hipster和Heroku把所有的东西放在一起,在我们准备发射的时候配置好Okta。在我让这个自然的CI\CD进程实时运行的同时,还有一件很重要的事情,就是回顾一下您必须做出的许多决定。

回到平台即服务,比如Heroku,比如JFrog管道。此外,像Cloud Foundry这样的东西在我们部署软件方面做得非常好,在找出我们如何跨标准部署软件以使其有效方面做得非常好。

有很多决定要做,我认为,有几个需要提出的是,我想如何向我的客户提供新功能?我想利用AB测试吗?我是否希望有一个受保护的路由,只有某些客户被路由到?我是否希望有一个无缝的切换,我以蓝绿色的方式推出功能?我该如何应对这些发生的变化?我希望批准如何工作?我怎么知道开发人员没有在未经产品经理批准的情况下发布代码?这些都是非常重要的问题。这还没有提到我们如何确保代码的功能,比如运行冒烟测试,运行前后验证测试,只是为了确保所有东西都安全成功地送到客户手中。

所有这些决定都需要运营方面和DevOps工程师进行大量的规划,以确保站点保持正常运行,保持活跃,保持安全。我们不想做的是,我们不想在这个过程中以干扰者的身份介入。所以我们在这里所做的是,我们试着把你必须为认证做的决定和你必须为你的CI / CD管道做的决定分开。当你考虑如何部署时,这变得越来越有效这跨多个应用程序。

在app 1和app in中做这个是不同的。如果我们在部署的所有这些不同的应用程序中都有一个定制的CI / CD管道,那么它对运营商社区的实际服务有多好?这意味着我们实际上必须横向扩展,而这并没有真正发挥作用。再一次,我真的想表明这是发生在真正的时间当我们完成CI \ CD的过程,我们建立和压缩我们所有的工件,叫出我们所看到的可能性与JFrog合作是我们必须存储这些工件的地方,我们必须检索它们,这样做对我们有机会在一起,我们感觉我们会有一个强大的解决方案,并确保这些应用程序也建造,编译和部署安全。

我们只有几秒钟的时间来部署它我们应该开始运行了。实际上我要跳过这个,我们来看看它应该是什么样子。现在让我们来看看我们部署的应用程序。记住,我们没有涉及到任何代码来进行身份验证。

当我点击登录按钮时,我被重定向到Okta,在那里我可以输入我的用户名和密码。

当我点击登录时,我将被重定向回应用。现在我们登陆了。同样,我使用了快速原型工具jhipster来引导我的应用程序,并经常部署它。现在我可以登录了。这只花了我们几分钟的时间,主要花在我们需要的地方决定如何构建应用,以及如何部署应用。

让我们来点小麻烦,好吗?我在职业生涯的早期就了解了应用的连续性。这是我能够与模型的概念和平相处的一种方式,模型已经在我的生活中运行了很多年我真的有点担心我们如何开始分解它们因为我们如何将这个大应用程序的第二个版本总是在远处隐约出现的老问题。所以我从应用连续体中学到的是倾听你的应用是如何成熟和制作的,然后在事情开始变得明显时开始分解它。

我们来举个例子。现在,我们收到了很多客户的请求,要求我们把我们在网站上列出的零食放在一个API中,供我们的一些客户使用。可能用于营销或在他们的网站上展示什么是可用的。这里的建议是构建一个轻量级API我们要快速地完成这个就像,我在模拟一个工程师说,是的,我可以很快地完成这个。API契约可能是这样的。

当我把它推到这里时,有一件重要的事情要注意,它是不安全的。它是公开的,不安全的,这可能不是我们想要的部署方式。那么,我们如何在这个API端点上构建安全性,同时又不给开发人员带来太多负担,让他们对不断变化的客户需求做出反应呢?

这就是API接入网关发挥作用的地方。它们是一个很好的工具,可以拦截您的API请求并在其上插入安全性。同样,它们代表了一种集中的解决方案,允许您标准化交互和拦截的方式,从而确保在所有应用程序中维护安全性。

在这个例子中,我们将为我们的堆栈API设置一个简单的路由。然后我们会通过一些简单的步骤来了解不安全感。

关于调用,我想说的是调用有一个扩展的设置集,你可以用它来控制api的安全性。我们要做的是看一下我们在设置这个的时候可以做的一些变化。

我喜欢的一个例子是,能够限制某些方法。假设我现在想对零食做一个操作。我有一些单页应用需要请求这些信息。所以我觉得也许我可以给他们零食清单没有特别的安全措施,我实际上可以确保放置,张贴补丁和删除,并确保它们是打开的。

现在我们来谈谈如何保护它。你可能会想,好吧,我要学习OAuth。所以我可以有效地做这个。好吧,没那么快。Kong有一个开放ID连接的库,可以让您简单地配置它。

现在,如果你把它与Okta的API和访问管理结合起来,我们会给你设置它所需的一切。它有四个主要属性,客户端ID和识别它的秘密,授权服务器所在的发行者,最后是一个自定义作用域,它允许您为调用应用程序的颜色定义授权。很快,我把我的范围定义为下一个范围。现在,我点击保存,我的api就安全了。只需要几个简单的步骤,你就能看到所有你可以为应用设置的扩展属性,但只需要这四个属性,再加上几个简单的步骤,我们就能保护我们的api。

好吧,让我们确保这确实能正常工作。让我们看看调用这些api时会发生什么。当我在这里进行调用时,我将快速地为我的零食输入端点我将看到一些有趣的事情发生,它会让我知道拦截确实发生了,我将看到重定向指示,嘿,发生了一些事情,它被暂时移动了。

那我们就输入一些假的客户ID和密码来确保它的安全。我们期望在这里看到的是请求被拒绝,并带有401和一条消息,说您未经授权,对吗?开始吧。所以我们知道应用程序是安全的。但我们也必须确保它是可访问的。因此,让我们使用真实的客户端ID和真实的密钥运行最后的测试,看看会发生什么。

我现在把这个放进去。我点击返回。希望我能拿回我的零食合同。看,我现在明白了。快速回顾一下,我们所能做的。

使用一些基本的脚手架和模板设置我们的应用程序,使用auth启动并运行它,并使用Kong和成熟的应用程序实际保护我们的端点。这大概花了我们8到10分钟。那么,当我们更进一步时会发生什么,对吧?

现在我们需要发展这个平台。这发生在很多方面。在某些情况下,你可能会让你的客户渴望获得预发布的新功能,这样你就可以得到一些反馈,他们就可以对即将到来的新功能产生兴趣。因此,您可能想要引入一些类似于用户验收测试环境的东西,它模仿prod开放,但只对一组选定的用户开放。

我们希望它能被推广,但我们也不想自己重建所有的基础设施。

类似地,如果您正在寻求扩展,可能会扩展到云提供商的不同可用性区域,或者尝试在全球范围内解释以满足您的原产国以外的一些客户的需求。

在这些场景中,您还希望与基础设施尽可能相似,但在另一个位置进行复制。同样,如果你想建立弹性,这是一个热门话题,以确保你有灾难恢复或容错能力,你想确保你复制的是类似的。在过去的日子里,要做到这一点,只是试图将其他站点的服务器规格与裸机相匹配,这是非常非常困难和昂贵的。但是现在,随着容器化和云提供商的出现,我们实际上可以非常快速地实现这一点,并且可以通过基础设施和配置以代码的形式实现不变。

我想说的另一件事是,如果你的商业模式发生了变化,客户想以一种不同的方式与你互动,比如说你正在进入一个多租户模式。

现在,您实际上必须提供租户,这是一个有趣的部分,因为它可能不像基础设施那样昂贵,但您仍然需要以相同的方式创建配置和对象,但在新的体系结构、新的空间中。让我们来看看terraform能做些什么来帮助我们做到这一点。正如巴拉特之前提到的,Okta提供的地形提供商现在已经被引入产品,并在整个产品生命周期中进行维护和发展。

我们不断添加新功能,以确保我们的管理sdk和我们的新产品一样,我们确保你能尽快看到它们的出现。

很快,在这个例子中,我们已经收集了所有的Okta配置,现在我们允许你把Okta配置打包到你的Kubernetes容器中,就像你做任何其他事情一样。

这意味着在你走向成熟的道路上成为一个强大的沉默的伙伴,我们不希望auth成为一个需要在你的时间里开单独的会议来弄清楚你将如何处理你的基础设施的所有Okta部分的最前沿。

我们想全程陪伴你,以确保无论你走到哪里,auth都在你身边。正如你在这里看到的,有几件事花费的时间最长,这是你真正需要考虑的事情。我希望如何部署这些容器?更重要的是,当我们进入DNS的这些AWS记录时,我想如何将这些东西连接在一起?

这些确实是你需要考虑的最重要的事情。但我们不希望你们在这些循环中花时间去深入思考真实以及如何以同样的方式复制真实。快速回顾一下我们为复制基础设施部署网络的最后一部分,在过去的12到14分钟里,我们了解了如何快速构建应用程序,快速构建原型,部署,使其上线,使其成熟,将其从一个整体分解为微服务,最后,复制我们所有的基础设施以应对不断变化的客户需求和不断变化的业务需求。所有这些都可以通过Okta提供的工具来实现。再次,我对我们与JFrog的合作感到非常兴奋JFrog的产品也是如此。

很快结束,现在我们已经完成了部署,我想回顾一下入门开发者版这是一个号召大家开始的行动,开始你在Okta上的开发者之旅。

如果你去developer.okta.com,你可以很容易地注册,免费使用这里的所有功能。我想说的是授权,这是我们谈论的API和访问管理,b2b集成与其他身份提供者集成,自适应MFA,能够探索多因素身份验证如何为你的用户和场景工作。另一个需要调用的是访问我们的Okta集成网络,它有大量预先构建的连接器,可以让你做很多事情。我还要感谢大家今天来参加我们的演讲。

我要把它踢给史蒂夫,让他来总结一下。看到所有这些技术结合在一起真是太棒了,我很高兴能够开发J hipster应用程序并将其与Okta连接起来。所以我要开始了。

你们推出的初级开发者版非常棒,可以让开发者开始构建应用程序,并让它运行起来。我们在JFrog免费层也有类似的东西,所以你也可以使用它的免费版本部署到Artifactory。

我有一个关于你支持的技术和不同Java框架的问题。你展示了jhipster和API网关,比如Kong,连接其他Java框架有多容易?假设我正在使用Spring Boot或micro profile或korkis,开发人员将其与Okta挂钩有多容易?是的,我们已经为Java和Java spring预构建了sdk。对于其他一些风格,我们确实通过API访问提供了传统路由,这样你就可以完全访问我们的API。

现在,我们正在根据需求和需要为这些sdk构建综合库。所以我们一直在关注趋势是什么,比如,我们知道在服务器端渲染和一些JavaScript框架中肯定会有一些动作发生。所以这些是我们真正关注的事情。我们主动接触客户,和他们谈谈,你知道,哪些技术让你感到兴奋,这也很有帮助?哪些事情会对你产生影响?而且,就像,你知道,进入智力讨论,你知道,这些技术的吸引力是什么,这样我们就可以和你在一起,支持并确保你最喜欢的语言和框架的旅程始终保持简单。

很好,我在模仿我们希望观众做的行为,并提出问题。希望大家已经向巴拉特和杰夫提问了。而且,你知道,大声喊出来,告诉我们你在JavaScript, Java, Python或go开发中使用什么框架,这样Okta的人就知道什么是流行的,他们需要更好地与之集成。还有一个简单的问题要提出来因为你之前谈到了安全巴拉特,你知道,这有点像太阳风黑客攻击,这只是供应链安全的一般问题。那么,开发人员为什么要关心安全性呢?喜欢为什么?

你知道,我们已经很好地处理了基本的网络认证,我们为什么要关心呢?

杰夫,如果你想[听不清],我就接受这个说法,但是,你知道,我认为,当你想到已经发生的最大的违规行为时,很多都是因为没有执行正确的代码,实际上是在内部做的。所以,你知道,通常如果你是一个微软商店,你会使用Azure Active Directory或类似的东西,它是内置的,但如果你自己写它,你真的,真的,你在承担巨大的风险。你不仅要冒很大的风险,还要投入大量的开发者资源和时间去搞清楚什么是LIDC?2022世界杯阿根廷预选赛赛程2.0到底是什么?比如,在你真正实现这些东西之前,你必须做很多概念性的学习,而且,你并没有按照最佳实践来做。所以,当你编写自己的安全代码时,有很多威胁向量是开放的,当你使用自己的认证代码时,在Okta,我们在开发过程中遇到了这些问题,我们知道这些是什么,我们知道避免这些陷阱的最佳方法,同时,我认为,为开发人员节省时间是一件大事。这样你就可以去做,你真正想做的事情,也就是,你知道,开发令人惊叹的应用程序,或者,你知道,发展你的业务,不管它是什么,但另一方面,你承担了巨大的风险。所以,你知道,一个小小的错误和代码就会打开一个,你知道,一个威胁载体。所以,我认为,从更大的角度来说,史蒂夫,我认为,我想说,这不仅仅是保护你的应用程序,抱歉,不仅仅是保护你的应用程序和api。我们建立了这些复杂的方法来增强API安全性,但也用于那个信息网站。那么我该如何自动化这些东西呢?那么最终会导致什么呢?

它最终导致了重大的安全问题,信息保护和治理。

如何保护自己,如何进行权限访问管理?当你使用Okta时,所有这些东西都会出现。假设,所以,你知道,我喜欢……和你们说话,JFrog,我爱说,你知道,自动由JFrog Okta获得的,你知道,所以你得到的,你这样的事情,你知道,当你思考和规划如何构建应用程序或您的业务增长,你不需要担心,部分因为我们照顾的重任。我们告诉你,这将是安全的。

我们有SLA说,好的,你会得到所有的信号,这些信号是威胁向量。

我们会为你报道的。

我希望答案是…不,不,我认为这很有说服力。它与拥有一个完整的平台来构建、发布、认证和保护应用程序的更好的故事联系在一起。所以我认为这一点很重要,它不仅可以节省时间,还可以避免对公司,应用程序和用户的重大威胁。这是一次很棒的会议。

非常感谢你们邀请我和你们一起做这件事。我希望大家喜欢我们今天在合伙人日剩下的环节。所以我很期待和Okta的合作,和你们一起工作。非常感谢。

非常感谢大家。

谢谢你邀请我们。

要么释放,要么死亡