5.6. 配置基于角色的访问控制


基于角色的访问控制(RBAC)是一种安全机制,它根据机构中个别用户的角色限制对资源的访问。功能存储 RBAC 可确保只有授权用户或组才能访问或修改特定资源,从而维护数据安全性和操作完整性。

Feature Store 中的 RBAC 实现旨在提供以下功能:

  • 分配权限 - 允许管理员根据其角色为用户或组分配各种操作和资源的权限。
  • 无缝集成 - 无缝集成现有业务代码,而无需大量修改。
  • 向后兼容性 - 维护对非授权模型的支持,作为默认值,以确保向后兼容。

功能存储 RBAC 提供以下优点:

  • 功能共享 - 允许多个团队共享功能存储,同时确保控制访问。此功能允许在不损害数据安全性的情况下进行协作工作。
  • 访问控制管理 - 对团队特定资源和空格的未授权访问,管理 每个用户或组可以执行的操作。

Feature Store 权限模型允许您为功能存储中定义的所有资源配置粒度权限策略。

当请求通过其中一个功能存储(Python)服务器执行时,执行权限授权强制:

  • 在线功能服务器(REST)
  • 离线功能服务器(Apache 箭头 Flight)使用 gRPC 通信协议来交换数据。此服务器将调用包装到现有离线存储实施,并将接口公开为 Arrow Flight 端点。
  • 注册表服务器(gRPC)
注意

如果您使用本地供应商(默认)配置功能存储,在访问 Feature Store API 时没有权限强制。

5.6.1. 默认授权配置

在默认配置中,不会应用任何权限强制。以下示例 Feature Store 不包含 spec.authz 部分,它表示没有授权。

apiVersion: feast.dev/v1alpha1
kind: FeatureStore
metadata:
  name: sample-no-auth
spec:
  feastProject: my_project
Copy to Clipboard Toggle word wrap

另外,您可以配置 OIDC 和 Kubernetes RBAC 授权协议。

5.6.2. OIDC 授权配置示例

以下示例显示了 Feature Store 自定义资源定义(CRD)中的 OIDC 授权配置:

apiVersion: feast.dev/v1alpha1
kind: FeatureStore
metadata:
  name: sample-oidc-auth
spec:
  feastProject: my_project
  authz:
    oidc:
      secretRef:
        name: oidc-secret

---
kind: Secret
apiVersion: v1
metadata:
  name: oidc-secret
stringData:
  client_id: client_id
  auth_discovery_url: auth_discovery_url
  client_secret: client_secret
  username: username
  password: password
Copy to Clipboard Toggle word wrap
注意

这个示例代码要求您使用特定于您的用例的值编辑它。

如需更多信息,请参阅 Feast 文档中的 OIDC 配置

5.6.3. Kubernetes 授权配置示例

以下示例显示了 Feature Store 自定义资源定义(CRD)中的 Kubernetes 授权配置:

apiVersion: feast.dev/v1alpha1
kind: FeatureStore
metadata:
  name: sample-kubernetes-auth
spec:
  feastProject: feast_rbac
  authz:
    kubernetes:
      roles:
      - feast-writer
      - feast-reader
Copy to Clipboard Toggle word wrap
注意

示例代码要求您使用特定于您的用例的值编辑它。

如需更多信息,请参阅 Feast 文档中的 Kubernetes RBAC 配置

有关如何实现 Kubernetes RBAC 授权的示例,请参阅使用 Feast Operator 在 Kubernetes 上运行 Feast RBAC 示例

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat