mod_auth_openidc Apache HTTPD 模块

使用 Keycloak 配置 mod_auth_openidc Apache 模块
Keycloak 不提供对 mod_auth_openidc 的任何官方支持。以下说明是尽力而为的,可能不是最新的。我们建议您参考官方的 mod_auth_openidc 文档以获取更多详细信息。

The mod_auth_openidc 是一个用于 OpenID Connect 的 Apache HTTP 插件。如果您的语言/环境支持使用 Apache HTTPD 作为代理,则可以使用 mod_auth_openidc 使用 OpenID Connect 保护您的 Web 应用程序。此模块的配置超出了本文档的范围。有关配置的更多详细信息,请参阅 mod_auth_openidc GitHub 存储库。

要配置 mod_auth_openidc,您需要

  • client_id。

  • client_secret。

  • 指向您应用程序的 redirect_uri。

  • Keycloak openid-configuration url

  • mod_auth_openidc 特定的 Apache HTTPD 模块配置。

一个示例配置如下所示。

LoadModule auth_openidc_module modules/mod_auth_openidc.so

ServerName ${HOSTIP}

<VirtualHost *:80>

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    #this is required by mod_auth_openidc
    OIDCCryptoPassphrase a-random-secret-used-by-apache-oidc-and-balancer

    OIDCProviderMetadataURL ${KC_ADDR}/realms/${KC_REALM}/.well-known/openid-configuration

    OIDCClientID ${CLIENT_ID}
    OIDCClientSecret ${CLIENT_SECRET}
    OIDCRedirectURI http://${HOSTIP}/${CLIENT_APP_NAME}/redirect_uri

    # maps the preferred_username claim to the REMOTE_USER environment variable
    OIDCRemoteUserClaim preferred_username

    <Location /${CLIENT_APP_NAME}/>
        AuthType openid-connect
        Require valid-user
    </Location>
</VirtualHost>

有关如何配置 mod_auth_openidc 的更多信息,请参阅 mod_auth_openidc 项目页面。

在此页面上