diff options
Diffstat (limited to 'bin/idp')
| -rwxr-xr-x | bin/idp | 16 |
1 files changed, 15 insertions, 1 deletions
@@ -70,11 +70,26 @@ class IdentityProvider [200, { 'Content-Type' => "application/samlmetadata+xml" }, [xml]] end + # GET /.well-known/oauth-authorization-server + def oauth_metadata + [200, { 'Content-Type' => "application/json" }, ["{}"]] + end + + # GET /.well-known/openid-configuration + def openid_metadata + [200, { 'Content-Type' => "application/json" }, ["{}"]] + end + + # auth service def call(env) path = env['PATH_INFO'] case env['REQUEST_METHOD'] when 'GET' case path + when '/.well-known/openid-configuration' + return openid_metadata + when '/.well-known/oauth-authorization-server' + return oauth_metadata when "/metadata.xml" return metadata when "/sessions/new" @@ -131,7 +146,6 @@ class IdentityProvider [200, { 'Content-Type' => "text/html" }, [html]] end - def not_found [404, {}, []] end |
