为 AWS 上的 MATLAB Web App Server 配置身份验证
支持的平台:仅限 Linux® 服务器
在将 MATLAB® Web App Server™ 参考架构部署到 Amazon® Web Services 并完成许可配置后,即可为服务器配置用户身份验证。
从 R2025a 版本开始,位于 Linux 上的 AWS® 中 MATLAB Web App Server 参考架构将 Keycloak 作为默认身份提供方。Keycloak 是一款云原生解决方案,为应用程序和服务提供身份验证、授权和用户管理功能。若您已有现成的身份提供方用于身份验证,可通过 Keycloak 与该身份提供方建立联合身份验证,或直接使用 LDAP 或 OIDC 协议配置与首选身份提供方的验证服务。
有关在 AWS 上部署参考架构的信息,请参阅 MATLAB Web App Server 在亚马逊网络服务上的部署指南。
使用 Keycloak 进行身份验证
自 R2025a 起
注意
如果托管服务器的 EC2 实例使用私有 IP 地址,您可以从属于与服务器 EC2 实例相同 VPC 的 EC2 实例连接到 Keycloak 管理控制台。
部署 MATLAB Web App Server 后,请登录 Keycloak 管理控制台配置用户身份验证并修改默认管理员凭据。
在 AWS 管理控制台中,打开您堆栈的 Stack details,然后点击输出选项卡。
查找名为 KeycloakConsoleUrl 的键值,并点击其下对应的 value 项所列的 URL。这将打开您 Keycloak 服务器的管理控制台。
首次访问 Keycloak 管理控制台时,可使用以下信息登录:
| 用户名 | keycloak-admin |
| 密码 | keycloak-admin |
首次登录 Keycloak 管理控制台后,系统会提示您为管理员帐户设置新密码。
您可以直接通过 Keycloak 设置用户身份验证,或与第三方身份提供方进行联合身份验证.通过您的身份验证提供商,根据需要添加或修改组和用户。有关更多信息,请参阅 Keycloak 文档中的用户管理。
领域
领域是一个管理对象的空间,包括用户、应用程序、角色和组.Keycloak 服务器预配置了两个领域:master 和 MATLAB Web App Server。
master 域包含可登录 Keycloak 管理控制台的 keycloak-admin 用户。在 master 领域中,admin 领域角色赋予用户登录 Keycloak 管理控制台的权限。
MATLAB Web App Server 域包含可访问 MATLAB Web App Server 主页和管理门户的用户及组。
有关域的更多信息,请参阅 Keycloak 文档中的配置域。
用户和组
在 MATLAB Web App Server 领域中,默认配置包含三个用户帐户,可用于登录服务器主页。每个用户都属于一个或多个预配置的组,从而获得对 MATLAB Web App Server 的特定权限。
| 组名称 | 组权限 | 组成员 |
|---|---|---|
MATLAB Web App Server 管理员 |
|
|
MATLAB Web App Server 作者 |
|
|
MATLAB Web App Server 用户 |
|
|
每个用户的默认密码与用户名相同。例如,管理员帐户的默认密码是 matlab-webapps-admin。首次登录用户帐户后,系统会提示您更改密码。
在 Keycloak 管理控制台中,通过导航至用户页面并点击 Add user,即可添加新用户并配置组成员资格.您可以指定用户名、登录时所需的操作,并配置组成员资格.默认情况下,新用户会自动添加到 MATLAB Web App Server Users 组中。有关在 Keycloak 中管理用户的更多信息,请参阅 Keycloak 文档中的管理用户。
当您将用户添加到预配置的 MATLAB Web App Server 组之一时,该用户将获得与该组关联的权限。例如,MATLAB Web App Server 作者组包含对 SampleApps 文件夹中 Web App 的上传和删除权限。将用户添加到预配置的组后,无需重启服务器。
要允许用户或组访问 MATLAB Web App Server 主页上的特定 Web App 或 App 文件夹,请通过管理门户的 App Management 页面配置用户 App 访问权限。示例,您可以授予 MATLAB Web App Server Authors 组在根文件夹中上传、删除和执行 App 的权限。
要允许用户访问管理门户,请将该用户添加到 MATLAB Web App Server 管理员组中。有关管理员门户的使用信息,请参阅 通过管理门户管理 AWS 上的 MATLAB Web App Server。
使用 LDAP 或 OIDC 进行身份验证
注意
如果托管服务器的 EC2 实例使用私有 IP 地址,则可以从属于同一 VPC 的 EC2 实例连接到该服务器 EC2 实例。
作为 Keycloak 的替代方案,您可以通过轻量级目录访问协议 (LDAP) 或 OpenID Connect (OIDC) 手动配置身份验证。
要设置手动认证,请通过 SSH 连接到托管 MATLAB Web App Server 的 EC2 实例。
在 AWS 管理控制台中,打开您堆栈的 Stack details,然后点击输出选项卡。
查找名为
MATLABWebAppServerEC2Instance的键值,并点击其下对应的value项所列的 URL。这将打开服务器实例页面。点击实例 ID 下的值查看实例摘要。
点击顶部的连接按钮。
在连接到实例对话框中,点击 SSH client。
请按照页面上的说明连接到 EC2 实例。
连接到服务器 EC2 实例后,请编辑位于 /local/MathWorks/webapps/ 文件夹中的名为 <release>/config/webapps_privatewebapps_authn.json 的文件。webapps_authn.json 的格式取决于您是使用 LDAP 还是 OIDC 进行身份验证。有关详细信息,请参阅身份验证。
要获取 redirectUrl 的值,请按以下步骤操作。
在 AWS 管理控制台中,选择您部署的堆栈。
在您的堆栈的堆栈详细信息中,点击输出选项卡。
查找名为
MATLABWebAppServerOIDCRedirectUrl的密钥,并复制其下对应的value项所列的 URL。将此 URL 用于
webapps_authn.json文件。
请重启服务器以使更改生效。
删除所有身份验证
小心
托管在未启用身份验证服务器的网络 App 可被开放互联网访问。
要从服务器移除所有身份验证并允许开放访问,请远程登录到服务器机器。然后,重命名或删除 /local/MathWorks/webapps/ 目录中的以下文件:<release>/config/webapps_private
webapps_authn.jsonwebapps_app_roles.jsonwebapps_acc_ctl.json
请重启服务器以使更改生效。要重新启用身份验证,请将文件还原至 webapps_private 文件夹。
另请参阅
主题
- MATLAB Web App Server 在亚马逊网络服务上
- 身份验证
- 配置在云上使用的 MATLAB Web App Server 许可证
- 通过管理门户管理 AWS 上的 MATLAB Web App Server