Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
try:
with open("../keys.yaml", "r") as stream:
config = yaml.load(stream, Loader=yaml.FullLoader)
except Exception as e:
print("Rename _keys.yaml to keys.yaml")
raise e
EMAIL = config["user_creds"]["email"]
CLIENT_CREDS = {
"client_id": config["client_creds"]["client_id"],
"client_secret": config["client_creds"]["client_secret"],
"scopes": config["client_creds"]["scopes"],
"redirect_uri": "http://localhost:5000/callback/aiogoogle",
}
state = create_secret() # Shouldn't be a global hardcoded variable.
LOCAL_ADDRESS = "localhost"
LOCAL_PORT = "5000"
app = Sanic(__name__)
aiogoogle = Aiogoogle(client_creds=CLIENT_CREDS)
# ----------------------------------------#
# #
# **Step A (Check OAuth2 figure above)** #
# #
# ----------------------------------------#
@app.route("/authorize")
except Exception as e:
print("Rename _keys.yaml to keys.yaml")
raise e
EMAIL = config["user_creds"]["email"]
CLIENT_CREDS = {
"client_id": config["client_creds"]["client_id"],
"client_secret": config["client_creds"]["client_secret"],
"scopes": config["client_creds"]["scopes"],
"redirect_uri": "http://localhost:5000/callback/aiogoogle",
}
state = (
create_secret()
) # Shouldn't be a global or a hardcoded variable. should be tied to a session or a user and shouldn't be used more than once
nonce = (
create_secret()
) # Shouldn't be a global or a hardcoded variable. should be tied to a session or a user and shouldn't be used more than once
LOCAL_ADDRESS = "localhost"
LOCAL_PORT = "5000"
app = Sanic(__name__)
aiogoogle = Aiogoogle(client_creds=CLIENT_CREDS)
# ----------------------------------------#
# #
# **Step A (Check OAuth2 figure above)** #
# #
# ----------------------------------------#
try:
with open("../keys.yaml", "r") as stream:
config = yaml.load(stream, Loader=yaml.FullLoader)
except Exception as e:
print("Rename _keys.yaml to keys.yaml")
raise e
EMAIL = config["user_creds"]["email"]
CLIENT_CREDS = {
"client_id": config["client_creds"]["client_id"],
"client_secret": config["client_creds"]["client_secret"],
"scopes": config["client_creds"]["scopes"],
"redirect_uri": "http://localhost:5000/callback/aiogoogle",
}
state = (
create_secret()
) # Shouldn't be a global or a hardcoded variable. should be tied to a session or a user and shouldn't be used more than once
nonce = (
create_secret()
) # Shouldn't be a global or a hardcoded variable. should be tied to a session or a user and shouldn't be used more than once
LOCAL_ADDRESS = "localhost"
LOCAL_PORT = "5000"
app = Sanic(__name__)
aiogoogle = Aiogoogle(client_creds=CLIENT_CREDS)
# ----------------------------------------#
# #
# **Step A (Check OAuth2 figure above)** #
# #
async def main():
nonce = create_secret()
aiogoogle = Aiogoogle(client_creds=CLIENT_CREDS)
uri = aiogoogle.openid_connect.authorization_url(
client_creds=CLIENT_CREDS,
nonce=nonce,
access_type="offline",
include_granted_scopes=True,
prompt="select_account",
)
webbrowser.open_new_tab(uri)
grant = input("Paste the code you received here, then press Enter")
full_user_creds = await aiogoogle.openid_connect.build_user_creds(
grant=grant, client_creds=CLIENT_CREDS, nonce=nonce, verify=False
)
full_user_info = await aiogoogle.openid_connect.get_user_info(full_user_creds)
print(
f"full_user_creds: {pprint.pformat(full_user_creds)}\n\nfull_user_info: {pprint.pformat(full_user_info)}"