-1

我目前正在设置一个带有 keycloak 集成的 angular4 项目。因此,当我遵循 keycloak github 存储库 (angular2-product-example) 中的示例时,我创建了一个 keycloak.json 客户端配置文件并将其上传到我的 Web 项目中,该项目可通过 Web url 访问。我需要它,以便我可以初始化 js 适配器:

let keycloakAuth: any = new Keycloak('keycloak.json');

但是我担心安全性,可以从 url 访问带有 keycloak 客户端密码的配置。在这种情况下,它通常是如何保护的?

4

2 回答 2

1

坦率地说,这是不可能的,因为阻止它被用户读取意味着阻止它被 Keycloak-js 读取(他们使用 XMLHttpRequest,但在授权之前,所以首先需要授权才能访问 keycloak.json 是不可能的)。

本教程中所述(请注意,对于 React),您必须为您的前端设置一个公共客户端,因为前端将在 vanilla 代码中公开。根据这个线程,私人客户端可能在 Firefox 或 Chrome 上工作,但它不可避免地会通过 Internet Explorer 产生 400,并且不能保证以任何方式工作。

PS,因为我假设您使用的是标准的 Keycloak-js 适配器,您也可以使用 simple const keycloak : Keycloak.KeycloakInstance = Keycloak();,它应该自动获取keycloak.json位于同一文件夹中的文件。这将意味着不熟悉 Keycloak-js 的人更少接触文件名。

于 2018-09-05T13:55:18.183 回答
-1

您应该使用您的.htaccess文件来防止访问您的虚拟主机上的特定文件或文件夹。有关此事的更多信息可以在以下链接中找到:

如何使用 htaccess 阻止访问

于 2017-10-21T08:06:01.270 回答