我尝试到达这个 keycloak 端点: http://10.10.10.10:8999/auth/realms/demo-realm/protocol/openid-connect/token
我添加了client_secret、grant_type 和client_id。然后当我从我的前端应用程序发送请求时,我得到了这个错误:
从源“http://localhost:4200”访问“http://10.10.10.10:8999/auth/realms/demo-realm/protocol/openid-connect/token”的 XMLHttpRequest 已被 CORS 策略阻止:请求的资源上不存在“Access-Control-Allow-Origin”标头。
我的密钥斗篷设置如下:
- 机密客户
-有效的重定向 URI:*
-web 来源:+ 或 *(都尝试过)
还尝试将有效 uris 设置为 http://localhost:4200
和 web 来源 +
或将 http://localhost:4200
添加到 web 来源。
重要的是客户端必须保密,否则当我尝试使用 access_token 时,它不会包含资源 ID...
提前致谢
在 keycloak 客户端设置中,添加
http://localhost:4200/*
作为有效的重定向 URI。在 web 起源中,+
是最好的选择。如果您使用的是 Java 适配器,还要设置
enable-cors
到true
(参见 https://www.keycloak.org/docs/latest/securing_apps/index.html#_java_adapter_config )