diff --git a/auth/oauth.py b/auth/oauth.py index afe18ecf..ac63fa5a 100644 --- a/auth/oauth.py +++ b/auth/oauth.py @@ -2,7 +2,7 @@ from authlib.integrations.starlette_client import OAuth from starlette.responses import RedirectResponse from auth.identity import Identity from auth.tokenstorage import TokenStorage -from settings import OAUTH_CLIENTS, BACKEND_URL, OAUTH_CALLBACK_URL +from settings import OAUTH_CLIENTS oauth = OAuth() @@ -66,7 +66,7 @@ async def oauth_login(request): provider = request.path_params["provider"] request.session["provider"] = provider client = oauth.create_client(provider) - redirect_uri = "%s/%s" % (BACKEND_URL, "oauth_authorize") + redirect_uri = "https://newapi.discours.io/oauth-authorize" return await client.authorize_redirect(request, redirect_uri) @@ -84,6 +84,6 @@ async def oauth_authorize(request): } user = Identity.oauth(user_input) session_token = await TokenStorage.create_session(user) - response = RedirectResponse(url=OAUTH_CALLBACK_URL) + response = RedirectResponse(url="https://new.discours.io/confirm") response.set_cookie("token", session_token) return response diff --git a/main.py b/main.py index 22172bcf..edabc2c6 100644 --- a/main.py +++ b/main.py @@ -13,7 +13,7 @@ from auth.authenticate import JWTAuthenticate from auth.oauth import oauth_login, oauth_authorize from base.redis import redis from base.resolvers import resolvers -from resolvers.auth import confirm_email_handler +# from resolvers.auth import confirm_email_handler from resolvers.zine import ShoutsCache from services.main import storages_init from services.stat.reacted import ReactedStorage @@ -54,8 +54,8 @@ async def shutdown(): routes = [ Route("/oauth/{provider}", endpoint=oauth_login), - Route("/oauth_authorize", endpoint=oauth_authorize), - Route("/confirm-email/{token}", endpoint=confirm_email_handler), # should be called on client + Route("/oauth-authorize", endpoint=oauth_authorize), + # Route("/confirm-email/{token}", endpoint=confirm_email_handler), # should be called on client ] app = Starlette( diff --git a/resolvers/auth.py b/resolvers/auth.py index 02210ad8..921e3f84 100644 --- a/resolvers/auth.py +++ b/resolvers/auth.py @@ -3,7 +3,6 @@ from datetime import datetime from graphql.type import GraphQLResolveInfo from transliterate import translit -from starlette.responses import RedirectResponse from auth.tokenstorage import TokenStorage from auth.authenticate import login_required @@ -19,7 +18,7 @@ from base.orm import local_session from base.resolvers import mutation, query from orm import User, Role from resolvers.profile import get_user_subscriptions -from settings import SESSION_TOKEN_HEADER, CONFIRM_CALLBACK_URL +from settings import SESSION_TOKEN_HEADER @mutation.field("refreshSession") @@ -62,15 +61,6 @@ async def confirm_email(_, _info, confirm_token): return {"error": "email is not confirmed"} -async def confirm_email_handler(request): - token = request.path_params["token"] # one time - request.session["token"] = token - res = await confirm_email(None, token) - response = RedirectResponse(url=CONFIRM_CALLBACK_URL) - response.set_cookie("token", res["token"]) # session - return response - - def create_user(user_dict): user = User(**user_dict) user.roles.append(Role.default_role)