Menu Close
Settings Close

Language and Page Formatting Options

4.3.2. 它如何工作

exampleRealm 中添加了以下用户:

表 4.2. 示例Realm用户

username密码角色

文莱

samplePass

示例

Issac

samplePass

guest

在启动时,JBoss EAP 加载核心服务并启动 undertowelytron 子系统。这可保护管理接口并公开 基本ExampleDomain、secdExampleDomain 和 summary MD5ExampleDomain (部署至 JBoss EAP 的应用)。

加载 sampleApp2.war 后,它会查找 basicExampleDomain 来为其安全 URL 提供身份验证和授权。它有两个 HTML 文件,/hello.html/secure/hello.html,并使用 BASIC 身份验证来保护路径 /secure/*。它要求 sample 角色访问任何安全 URL。

用户进行身份验证时,将使用特定的机制提交其凭据,具体取决于他们如何访问 JBoss EAP。例如,如果用户尝试使用 HTTP 和 DIGEST 身份验证访问管理控制台,他们将使用公开为 摘要ExampleDomain 的 DIGEST 身份验证方法进行身份验证。如果他们尝试使用带有 BASIC 身份验证的 HTTP 访问 sampleApp2.war,则将使用公开为 basicExampleDomain 的 BASIC 身份验证方法进行身份验证。如果他们尝试使用 SASL 通过 DIGEST 身份验证访问管理 CLI,则将使用公开为 摘要MD5ExampleDomain 的 DIGEST-MD5 进行身份验证。HTTP 身份验证机制使用 exampleHttpAuthFactory,SASL 身份验证机制则使用 exampleSaslAuthFactory。使用 exampleDomain 验证工厂处理身份验证和角色映射。

如果文莱或 Issac 试图访问管理界面,系统会提示它们输入用户名和密码。成功登录后,他们分别能够执行管理操作。

当文稿或 Issac 请求 /hello.html 时,他们可以查看该页面而不进行身份验证。当文莱或 Issac 尝试请求 /secure/hello.html 时,系统会提示他们输入用户名和密码。成功登录后,文莱能够查看 /secure/hello.html,因为他拥有 示例 角色,但 Issac 将无法查看 /secure/hello.html,因为他拥有 guest 角色。所有其他用户均可在不登录的情况下访问 /hello.html,但是任何用户都无法访问 /secure/hello.html,因为的订阅和 Issac 是 exampleRealm 中唯一的用户。