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 來保護您的 Web 應用程式的安全,並使用 OpenID Connect 進行驗證。本文件不包含此模組的詳細設定。有關設定的更多詳細資訊,請參閱 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 專案頁面。

在本頁