7.3.2. 使用 filesystem-realm 命令迁移到基于文件系统的安全域


这部分论述了如何使用 elytron.sh 工具的文件系统域将基于属性的安全域迁移到 Elytron.sh 工具的基于文件系统的

基于文件系统的域是基于文件系统的身份存储,供 Elytron 用于存储用户身份。filesystem-realm 命令将 properties-realm 文件转换为 filesystem-realm。它还生成用于将此域和安全域添加到 elytron 子系统的命令。

将基于属性的身份验证迁移到基于文件系统的身份验证的步骤如下:

  1. 迁移属性文件。

    您可以一次迁移单个用户属性文件,或者批量迁移属性文件。以下示例说明了这两种迁移类型的步骤。

    • 迁移单个属性文件.

      以下示例将单个 user-properties 文件与相关的 roles-properties 文件转换为 filesystem-realm:这个示例假设旧安全域具有以下 user-properties 和 role-properties 文件:

      example-users.properties
      example-roles.properties

      示例:单一用户属性文件迁移

      $./bin/elytron-tool.sh filesystem-realm --users-file example-users.properties --roles-file example-roles.properties --output-location realms/example

      这将创建文件系统域文件和包含管理 CLI 命令的脚本。脚本存储在 realms/example 目录中。

    • 迁移多个属性文件.

      以下示例将含有批量关联 roles-properties 文件的用户属性文件转换为 filesystem-realm:这个示例假设旧安全域具有以下属性文件:

      users-1.properties
      users-2.properties
      roles-1.properties
      roles-2.properties

      若要批量转换用户角色文件,您必须创建一个描述符文件,以用于 filesystem-realm 命令。在本例中,使用以下内容创建位于 /bin 目录中的描述符文件 example-descriptor-file

      示例:描述符文件

      users-file:/full/path/to/users-1.properties
      roles-file:/full/path/to/roles-1.properties
      output-location:./realms/bulk-1-example
      filesystem-realm-name:exampleFileSystemRealm1
      security-domain-name:exampleSecurityDomain1
      
      users-file:/full/path/to/users-2.properties
      roles-file:/full/path/to/roles-2.properties
      output-location:./realms/bulk-2-example
      filesystem-realm-name:exampleFileSystemRealm2
      security-domain-name:exampleSecurityDomain2

      描述符文件中的空行用于分隔每个用户属性文件的操作。

      以下示例将使用描述符文件将含有关联 roles-properties 文件的两个 user-properties 文件转换为 filesystem-realm

      示例:批量迁移

      $./bin/elytron-tool.sh filesystem-realm --bulk-convert example-descriptor-file

      这将创建包含管理 CLI 命令 的文件系统域 文件和脚本。脚本存储在描述符文件的 output-location 属性中指定的目录中。

  2. 将文件系统安全域添加到 Elytron。

    迁移文件后,使用 E lytron 工具生成的 CLI 命令,将新的安全域和安全域添加到 e lytron 子系统。

    示例:添加 filesystem-realm

    /subsystem=elytron/filesystem-realm=converted-properties-filesystem-realm:add(path=/full/path/to/realms/example)
    
    /subsystem=elytron/security-domain=converted-properties-security-domain:add(realms=[{realm=converted-properties-filesystem-realm}],default-realm=converted-properties-filesystem-realm,permission-mapper=default-permission-mapper)

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.