mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-09 17:45:32 -04:00
Merge pull request #1020 from GSA/notify-api-585
reformat private key (notify-api-585)
This commit is contained in:
@@ -26,10 +26,24 @@ from app.utils import hide_from_search_engines
|
|||||||
from app.utils.login import is_safe_redirect_url
|
from app.utils.login import is_safe_redirect_url
|
||||||
|
|
||||||
|
|
||||||
|
def _reformat_keystring(orig):
|
||||||
|
new_keystring = orig.replace("-----BEGIN PRIVATE KEY-----", "")
|
||||||
|
new_keystring = new_keystring.replace("-----END PRIVATE KEY-----", "")
|
||||||
|
new_keystring = new_keystring.strip()
|
||||||
|
new_keystring = "\n".join(
|
||||||
|
["-----BEGIN PRIVATE KEY-----", new_keystring, "-----END PRIVATE KEY-----"]
|
||||||
|
)
|
||||||
|
new_keystring = f"{new_keystring}\n"
|
||||||
|
return new_keystring
|
||||||
|
|
||||||
|
|
||||||
def _get_access_token(code, state):
|
def _get_access_token(code, state):
|
||||||
client_id = os.getenv("LOGIN_DOT_GOV_CLIENT_ID")
|
client_id = os.getenv("LOGIN_DOT_GOV_CLIENT_ID")
|
||||||
access_token_url = os.getenv("LOGIN_DOT_GOV_ACCESS_TOKEN_URL")
|
access_token_url = os.getenv("LOGIN_DOT_GOV_ACCESS_TOKEN_URL")
|
||||||
keystring = os.getenv("LOGIN_PEM")
|
keystring = os.getenv("LOGIN_PEM")
|
||||||
|
if " " in keystring:
|
||||||
|
keystring = _reformat_keystring(keystring)
|
||||||
|
|
||||||
payload = {
|
payload = {
|
||||||
"iss": client_id,
|
"iss": client_id,
|
||||||
"sub": client_id,
|
"sub": client_id,
|
||||||
@@ -174,7 +188,7 @@ def sign_in():
|
|||||||
current_app.logger.info(
|
current_app.logger.info(
|
||||||
f"LOGIN_DOT_GOV_SIGNOUT_REDIRECT={os.getenv('LOGIN_DOT_GOV_SIGNOUT_REDIRECT')}"
|
f"LOGIN_DOT_GOV_SIGNOUT_REDIRECT={os.getenv('LOGIN_DOT_GOV_SIGNOUT_REDIRECT')}"
|
||||||
)
|
)
|
||||||
initial_signin_url = os.getenv('LOGIN_DOT_GOV_INITIAL_SIGNIN_URL')
|
initial_signin_url = os.getenv("LOGIN_DOT_GOV_INITIAL_SIGNIN_URL")
|
||||||
current_app.logger.info(f"LOGIN_DOT_GOV_INITIAL_SIGNIN_URL={initial_signin_url}")
|
current_app.logger.info(f"LOGIN_DOT_GOV_INITIAL_SIGNIN_URL={initial_signin_url}")
|
||||||
|
|
||||||
return render_template(
|
return render_template(
|
||||||
|
|||||||
@@ -15,7 +15,9 @@ def test_non_logged_in_user_can_see_homepage(
|
|||||||
client_request.logout()
|
client_request.logout()
|
||||||
page = client_request.get("main.index", _test_page_title=False)
|
page = client_request.get("main.index", _test_page_title=False)
|
||||||
|
|
||||||
assert page.h1.text.strip() == ("Reach people where they are with government-powered text messages")
|
assert page.h1.text.strip() == (
|
||||||
|
"Reach people where they are with government-powered text messages"
|
||||||
|
)
|
||||||
|
|
||||||
assert page.select_one("a.usa-button.usa-button--big")["href"] == url_for(
|
assert page.select_one("a.usa-button.usa-button--big")["href"] == url_for(
|
||||||
"main.sign_in",
|
"main.sign_in",
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import uuid
|
|||||||
import pytest
|
import pytest
|
||||||
from flask import url_for
|
from flask import url_for
|
||||||
|
|
||||||
|
from app.main.views.sign_in import _reformat_keystring
|
||||||
from app.models.user import User
|
from app.models.user import User
|
||||||
from tests.conftest import SERVICE_ONE_ID, normalize_spaces
|
from tests.conftest import SERVICE_ONE_ID, normalize_spaces
|
||||||
|
|
||||||
@@ -39,6 +40,16 @@ def test_render_sign_in_template_with_next_link_for_password_reset(client_reques
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def test_reformat_keystring():
|
||||||
|
orig = "-----BEGIN PRIVATE KEY----- blahblahblah -----END PRIVATE KEY-----"
|
||||||
|
expected = """-----BEGIN PRIVATE KEY-----
|
||||||
|
blahblahblah
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
|
"""
|
||||||
|
reformatted = _reformat_keystring(orig)
|
||||||
|
assert reformatted == expected
|
||||||
|
|
||||||
|
|
||||||
def test_sign_in_explains_session_timeout(client_request):
|
def test_sign_in_explains_session_timeout(client_request):
|
||||||
client_request.logout()
|
client_request.logout()
|
||||||
page = client_request.get("main.sign_in", next="/foo")
|
page = client_request.get("main.sign_in", next="/foo")
|
||||||
|
|||||||
@@ -632,7 +632,7 @@ def test_should_show_sms_template_with_downgraded_unicode_characters(
|
|||||||
fake_uuid,
|
fake_uuid,
|
||||||
):
|
):
|
||||||
msg = "here:\tare some “fancy quotes” and zero\u200Bwidth\u200Bspaces"
|
msg = "here:\tare some “fancy quotes” and zero\u200Bwidth\u200Bspaces"
|
||||||
rendered_msg = 'here: are some “fancy quotes” and zerowidthspaces'
|
rendered_msg = "here: are some “fancy quotes” and zerowidthspaces"
|
||||||
|
|
||||||
mocker.patch(
|
mocker.patch(
|
||||||
"app.service_api_client.get_service_template",
|
"app.service_api_client.get_service_template",
|
||||||
|
|||||||
Reference in New Issue
Block a user