mod_auth_openidc Apache HTTPD 模块

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

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 项目页面。

在此页面上