Skip to content
Snippets Groups Projects
Commit 43dbd8bb authored by kaiyou's avatar kaiyou
Browse files

Make OIDC routes more realm-like

parent cba46156
No related branches found
No related tags found
1 merge request!20Add 'remember me' button
...@@ -181,6 +181,7 @@ class Client(sqla_oauth2.OAuth2ClientMixin): ...@@ -181,6 +181,7 @@ class Client(sqla_oauth2.OAuth2ClientMixin):
@blueprint.route("/oidc/authorize/<service_uuid>", methods=["GET", "POST"]) @blueprint.route("/oidc/authorize/<service_uuid>", methods=["GET", "POST"])
@blueprint.route("/oidc/<service_uuid>/authorize", methods=["GET", "POST"])
@security.authentication_required() @security.authentication_required()
def oidc_authorize(service_uuid): def oidc_authorize(service_uuid):
client = Client(get_service(service_uuid, __name__)) client = Client(get_service(service_uuid, __name__))
...@@ -189,12 +190,14 @@ def oidc_authorize(service_uuid): ...@@ -189,12 +190,14 @@ def oidc_authorize(service_uuid):
@blueprint.route("/oidc/token/<service_uuid>", methods=["POST"]) @blueprint.route("/oidc/token/<service_uuid>", methods=["POST"])
@blueprint.route("/oidc/<service_uuid>/token", methods=["POST"])
def oidc_token(service_uuid): def oidc_token(service_uuid):
client = Client(get_service(service_uuid, __name__)) client = Client(get_service(service_uuid, __name__))
return client.authorization.create_token_response() return client.authorization.create_token_response()
@blueprint.route("/oidc/userinfo/<service_uuid>", methods=["GET", "POST"]) @blueprint.route("/oidc/userinfo/<service_uuid>", methods=["GET", "POST"])
@blueprint.route("/oidc/<service_uuid>/userinfo", methods=["GET", "POST"])
def oidc_userinfo(service_uuid): def oidc_userinfo(service_uuid):
client = Client(get_service(service_uuid, __name__)) client = Client(get_service(service_uuid, __name__))
token = client.validate_token(flask.request) token = client.validate_token(flask.request)
...@@ -202,7 +205,7 @@ def oidc_userinfo(service_uuid): ...@@ -202,7 +205,7 @@ def oidc_userinfo(service_uuid):
return client.generate_user_info(profile, token["scope"]) return client.generate_user_info(profile, token["scope"])
@blueprint.route("/oidc/discovery/<service_uuid>", methods=["GET"]) @blueprint.route("/oidc/<service_uuid>/.well-known/openid-configuration", methods=["GET"])
def oidc_discovery(service_uuid): def oidc_discovery(service_uuid):
client = Client(get_service(service_uuid, __name__)) client = Client(get_service(service_uuid, __name__))
return client.generate_discovery() return client.generate_discovery()
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment