微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

带有 nodeJs 的 Keycloak-Connect Enforcer 不起作用

如何解决带有 nodeJs 的 Keycloak-Connect Enforcer 不起作用

我尝试使用 Nodejs 使用具有“凭据”类型的 Keylcoak 已经 2 天了。 我看到了很多使用 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 凭证类型,创建了 Permission 和 ressource.. 但是当我尝试在'/user'中连接时,我有一个“访问被拒绝”,但不是'/test'..

我需要在我的 keycloak 管理面板中配置一些东西吗?

谢谢你帮助我!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。