使用 keycloak auth 保护 Apache uri

使用 keycloak auth 保护 Apache uri

我正在尝试配置 Apache 和 Keyloak 以根据用户的角色授予他们访问权限。

我尝试从一个简单的配置开始。因此我创建了名为的目录demo1/var/www/然后dir1dir2其中,接下来我在和demo1中创建了两个 html 文件。dir1dir2

总结 :

/var/www---demo1 ----- dir1 --- file1.html
                   |
                   --- dir2 --- file2.html

我已经配置了keycloak如下:

Keycloak 客户端配置

我已经将 Apache 配置如下:

Listen 8080 http

<VirtualHost *:8080>

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html



        #this is required by mod_auth_openidc

        OIDCCryptoPassphrase passphrase
        OIDCProviderMetadataURL http://192.168.56.101:8080/auth/realms/master/.well-known/openid-configuration
        OIDCClientID demo-apache
        OIDCClientSecret ba002619-5ab5-41b4-aed3-338e4a3235ef
        OIDCRedirectURI http://192.168.56.104:8080/demo1/redirect_uri

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


        <Location /demo1/dir1 >
                AuthType openid-connect
                Require valid-user
                Loglevel debug
        </Location>

        <Location /demo1/dir2 >
                AuthType openid-connect
                Require valid-user
                Loglevel debug
        </Location>

</VirtualHost>

当我尝试访问时,/demo1/dir1/系统提示我输入用户名/密码,但dir1我得到的不是,而是404 Not Found The requested URL /demo1/redirect_uri was not found on this server

我如何获取dir1和的内容dir2

任何帮助,将不胜感激。

谢谢

答案1

您还需要demo1/redirect_uri按照 README.md 和示例中所指出的那样进行保护auth_openidc.conf

相关内容