小编Tim*_*ame的帖子

如何在docker的keycloak中添加SSL

我在将 SSL 证书添加到在 docker 上运行的 Keycloak 时遇到问题。我通过负载均衡器从 AWS EC2 获得了 SSL 证书,但不知道如何将其添加到 docker 上的 Keycloak 中。我正在搜索谷歌,但尚未找到任何结果。

另外,当我访问https://stackoverflow.com之类的页面时,ssl 工作正常。但是当我尝试打开https://stackoverflow.com:8443(因为 8443 是 Keycloak 的端口)时,它不起作用。

Keycloak的Dockerfile代码如下:

FROM jboss/keycloak:4.6.0.Final

WORKDIR /opt/jboss/keycloak

COPY realm-export.json /opt/jboss/keycloak/

EXPOSE 8443

ENTRYPOINT [ "/opt/jboss/tools/docker-entrypoint.sh" ]
CMD ["-b", "0.0.0.0", "-bmanagement", "0.0.0.0", "-Dkeycloak.import=realm-export.json -Dkeycloak.migration.strategy=OVERWRITE_EXISTING"]
Run Code Online (Sandbox Code Playgroud)

这是 docker-compose.yml 文件:

version: '2'

services:
  keycloak:
    build: "./Keycloak + actibook-app client import"
    depends_on:
      - keycloak-postgres
    environment:
      - KEYCLOAK_USER=${KEYCLOAK_USER}
      - KEYCLOAK_PASSWORD=${KEYCLOAK_PASSWORD}
      - KEYCLOAK_IMPORT=${KEYCLOAK_IMPORT}
      - POSTGRES_USER=${KEYCLOAK_DATABASE_USER}
      - POSTGRES_PASSWORD=${KEYCLOAK_DATABASE_PASSW}
      - POSTGRES_PORT_5432_TCP_ADDR= keycloak-postgres
    ports:
      - "8443:8443" …
Run Code Online (Sandbox Code Playgroud)

ssl certificate amazon-web-services docker keycloak

7
推荐指数
1
解决办法
2万
查看次数

无法访问 JWT 令牌 .NET Core 中的角色

我有一个使用 .NET Core API、Keycloak 和 JWT 令牌制作的应用程序。

到目前为止,我一直在使用旧版本的 Keycloak,当它创建 JWT 令牌时,它在有效负载上写下了角色:

{
    "user_roles": [
        "offline_access",
        "uma_authorization",
        "admin",
        "create-realm"
  ]
}
Run Code Online (Sandbox Code Playgroud)

但是现在在我更新它之后,它在有效载荷上写了这里的角色:

{
  "realm_access": {
    "roles": [
      "create-realm",
      "teacher",
      "offline_access",
      "admin",
      "uma_authorization"
    ]
  },
}
Run Code Online (Sandbox Code Playgroud)

而且我需要知道如何将这个旧代码更改为新代码,告诉它不要看user_roles,但要看realm_access然后到roles

public void AddAuthorization(IServiceCollection services)
{
    services.AddAuthorization(options =>
    {
        options.AddPolicy("Administrator", policy => policy.RequireClaim("user_roles", "admin"));
        options.AddPolicy("Teacher", policy => policy.RequireClaim("user_roles", "teacher"));
        options.AddPolicy("Pupil", policy => policy.RequireClaim("user_roles", "pupil"));
        options.AddPolicy(
            "AdminOrTeacher",
            policyBuilder => policyBuilder.RequireAssertion(
                context => context.User.HasClaim(claim =>
                               claim.Type == "user_roles" && (claim.Value == "admin" …
Run Code Online (Sandbox Code Playgroud)

c# authorization jwt keycloak asp.net-core

5
推荐指数
1
解决办法
2316
查看次数

BrowserRouter 中的 react-router-dom basename 无法正常工作

我创建了一个ReactJs应用和如何只在访问domain.com/应用

我把这个加到 index.js

<BrowserRouter basename='/app/'>
  <App />
</BrowserRouter>
Run Code Online (Sandbox Code Playgroud)

现在,当我在页面之间导航时,它可以/app/正常工作(它添加正确),例如。domain.com/app/about.

但是该应用程序仍然可以在没有/app, 例如的情况下访问。当我输入时domain.com/about仍然显示关于页面。

虽然我希望它只能通过 访问/app/,而不是没有它。

reactjs react-router react-router-dom

0
推荐指数
1
解决办法
5880
查看次数