已经 2 天了,我正在尝试使用 Nodejs 将 Keylcoak 与“凭据”类型一起使用。我看到很多帖子和示例都使用 Bear-only,但也有一些使用 Credential,而我看到的内容对我不起作用..
这是我的代码:
const express = require('express');
const app = express();
const session = require('express-session');
const Keycloak = require('keycloak-connect');
const memoryStore = new session.MemoryStore();
let kcConfig = {
clientId: 'TEST',
bearerOnly: true,
serverUrl: 'http://localhost:8080/auth',
realm: 'TEST',
realmPublicKey: '<MYPUBLICKEY>'
};
let keycloak = new Keycloak({ store: memoryStore }, kcConfig);
app.use(keycloak.middleware({
logout: '/logout',
admin: '/',
protected: '/user'
}));
// My api route with permission resource
app.get( '/user', keycloak.enforcer('something:test'), function(req, res){
res.send([{"name": "Paul" }, { "name":"Roger"}, {"name": "Hector"}])
});
app.get('/test', keycloak.protect(), (req, res) => {
roles()
res.send('Hello')
})
module.exports = app
我配置 Keycloak 并创建一个客户端名称“TEST”并打开 te 凭据类型,创建权限和资源。但是当我尝试在“/用户”中连接时,我有一个“拒绝访问”,但没有/测试'..
我需要在我的 keycloak 管理面板中配置一些东西吗?
谢谢你帮助我!