前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >使用Dex和RBAC保护对Kubernetes应用程序的访问

使用Dex和RBAC保护对Kubernetes应用程序的访问

作者头像
CNCF
发布2021-07-07 17:00:38
发布2021-07-07 17:00:38
1.3K0
举报
文章被收录于专栏:CNCFCNCF

客座文章作者:Onkar Bhat,工程经理和 Deepika Dixit,软件工程师,Kasten by Veeam

安全性是应用程序开发的一个关键需求,以一种使用户体验无缝和无麻烦的方式配置认证和授权工作流也是如此。幸运的是,在 Kubernetes 中有一个简单的方法做到这一点——无需重新发明轮子。

在最近的网络研讨会上,Kasten by Veeam 工程经理 Onkar Bhat 和软件工程师 Deepika Dixit 分享了一种使用Dex[1]和基于角色的访问控制(RBAC)配置认证和授权工作流的简单方法。Bhat 和 Dixit 分别处理了授权和身份验证,解释了他们的方法是如何工作的,并为观众提供了一个循序渐进的演示。

首先,使用 Dex 进行身份验证

开始本次网络研讨会,Bhat 提供了 Dex 认证工作流程的详细概述。使用 Dex 的开发人员,只需将应用程序配置为当用户试图访问应用程序时,将用户重定向到 Dex。Dex 然后验证应用程序是否已经注册到自己身上,并尝试通过第三方身份提供者谷歌、GitHub、Active Directory 或其他身份验证。Dex 支持一个很长的 IDP 列表,但是为了演示的目的,Bhat 使用了 LDAP。

一旦用户通过 IDP 的身份验证,他或她将被重定向回 Dex,由 Dex 批准用户对客户机应用程序的访问。Bhat 提到,IDP 通常在 Kubernetes 之外,可以在 Dex 内将连接器配置到多个 IDP。

在概述之后,Bhat 向查看者介绍了如何配置 Dex,并提供了屏幕截图来说明身份验证工作流的关键部分。然后他执行了一个现场演示,在那里他安装并运行了一个客户端应用程序,以测试单个用户、用户组和管理员的 Dex 身份验证工作流。

接下来,使用 RBAC 进行授权

如果没有授权用户的过程,应用程序安全性就不完整,RBAC 提供了一种结合 Dex 身份验证工作流实现这一目的的简单方法。

正如 Dixit 所指出的,Kubernetes 有自己的方法来管理对你的计算机或网络资源的访问,该方法基于你组织中单个用户的角色。Kubernetes RBAC 允许你使用现有的用户和组,并为它们分配角色。该方法灵活而强大——定义规则一次,就可以多次使用它们,不仅在集群内,而且可以跨多个集群使用。RBAC 清楚地定义了谁可以访问什么,这允许在应用程序更改和增长时跨集群进行动态计算。

Dixit 指出,对于管理员来说,多租户常常是一个问题,特别是当集群和应用程序在初始设置之后成熟时。它们必须决定如何限制用户仅访问它们的应用程序和应用程序中的组件。Kubernetes RBAC 使定义规则和管理谁可以访问什么变得更容易,同时允许用户和应用程序之间的分离和安全性。

Dixit 分享了 Kubernetes 文档中的角色和 clusterRoles 示例,以说明可以区分应用程序级和集群级访问。她还指出,规则是一组特定的权限,本质上是附加的;默认情况下,用户没有访问权限,除非它绑定到一个角色。可以扩展这些规则并提供额外的访问。规则可以是“all”,也可以是非常细的,甚至是 API 组中的特定资源。

根据 Dixit,规则的主题可以是三种类型:用户、组或服务帐户。可以使用 RoleBinding 和 ClusterRoleBinding 在命名空间或集群级别定义不同的访问级别。

Kubernetes RBAC 的一个重要特性是更改身份验证系统的能力。一旦你将角色和访问级别定义为 RBAC 对象,你就可以从一个 IDP 切换到另一个 IDP,并且你所拥有的 RBAC 角色是持久的。

在 Dexit 在讨论中逐步演示了如何在 Kubernetes 中使用 RBAC 为所有类型的主题配置访问。

观看演示

Dex 和 RBAC 可以一起用于为 Kubernetes 应用程序提供强大的安全性。

参考资料

[1]

Dex: https://dexidp.io/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 首先,使用 Dex 进行身份验证
  • 接下来,使用 RBAC 进行授权
  • 观看演示
    • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档