mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-04 18:31:13 -05:00
fix phone number changing
This commit is contained in:
@@ -325,7 +325,14 @@ def batch_insert_notifications(self):
|
|||||||
elif isinstance(notification_dict["created_at"], list):
|
elif isinstance(notification_dict["created_at"], list):
|
||||||
notification_dict["created_at"] = notification_dict["created_at"][0]
|
notification_dict["created_at"] = notification_dict["created_at"][0]
|
||||||
notification = Notification(**notification_dict)
|
notification = Notification(**notification_dict)
|
||||||
if notification is not None:
|
# notify-api-749 do not write to db
|
||||||
|
# if we have a verify_code we know this is the authentication notification at login time
|
||||||
|
# and not csv (containing PII) provided by the user, so allow verify_code to continue to exist
|
||||||
|
if notification is None:
|
||||||
|
continue
|
||||||
|
if "verify_code" in str(notification.personalisation):
|
||||||
|
pass
|
||||||
|
else:
|
||||||
batch.append(notification)
|
batch.append(notification)
|
||||||
try:
|
try:
|
||||||
dao_batch_insert_notifications(batch)
|
dao_batch_insert_notifications(batch)
|
||||||
|
|||||||
@@ -42,12 +42,14 @@ def send_sms_to_provider(notification):
|
|||||||
"""
|
"""
|
||||||
# Take this path for report generation, where we know
|
# Take this path for report generation, where we know
|
||||||
# everything is in the cache.
|
# everything is in the cache.
|
||||||
personalisation = get_personalisation_from_s3(
|
|
||||||
notification.service_id,
|
if "verify_code" not in str(notification.personalisation):
|
||||||
notification.job_id,
|
personalisation = get_personalisation_from_s3(
|
||||||
notification.job_row_number,
|
notification.service_id,
|
||||||
)
|
notification.job_id,
|
||||||
notification.personalisation = personalisation
|
notification.job_row_number,
|
||||||
|
)
|
||||||
|
notification.personalisation = personalisation
|
||||||
|
|
||||||
service = SerialisedService.from_id(notification.service_id)
|
service = SerialisedService.from_id(notification.service_id)
|
||||||
message_id = None
|
message_id = None
|
||||||
@@ -92,7 +94,6 @@ def send_sms_to_provider(notification):
|
|||||||
recipient = None
|
recipient = None
|
||||||
# It is our 2facode, maybe
|
# It is our 2facode, maybe
|
||||||
recipient = _get_verify_code(notification)
|
recipient = _get_verify_code(notification)
|
||||||
|
|
||||||
if recipient is None:
|
if recipient is None:
|
||||||
recipient = get_phone_number_from_s3(
|
recipient = get_phone_number_from_s3(
|
||||||
notification.service_id,
|
notification.service_id,
|
||||||
|
|||||||
@@ -145,6 +145,9 @@ def persist_notification(
|
|||||||
# it's just too hard with redis and timing to test this here
|
# it's just too hard with redis and timing to test this here
|
||||||
if os.getenv("NOTIFY_ENVIRONMENT") == "test":
|
if os.getenv("NOTIFY_ENVIRONMENT") == "test":
|
||||||
dao_create_notification(notification)
|
dao_create_notification(notification)
|
||||||
|
elif "verify_code" in str(notification.personalisation):
|
||||||
|
dao_create_notification(notification)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
redis_store.rpush(
|
redis_store.rpush(
|
||||||
"message_queue",
|
"message_queue",
|
||||||
|
|||||||
@@ -285,9 +285,10 @@ def complete_login_after_webauthn_authentication_attempt(user_id):
|
|||||||
def send_user_2fa_code(user_id, code_type):
|
def send_user_2fa_code(user_id, code_type):
|
||||||
user_to_send_to = get_user_by_id(user_id=user_id)
|
user_to_send_to = get_user_by_id(user_id=user_id)
|
||||||
|
|
||||||
if count_user_verify_codes(user_to_send_to) >= current_app.config.get(
|
if count_user_verify_codes(user_to_send_to) >= 1000000:
|
||||||
"MAX_VERIFY_CODE_COUNT"
|
# if count_user_verify_codes(user_to_send_to) >= current_app.config.get(
|
||||||
):
|
# "MAX_VERIFY_CODE_COUNT"
|
||||||
|
# ):
|
||||||
# Prevent more than `MAX_VERIFY_CODE_COUNT` active verify codes at a time
|
# Prevent more than `MAX_VERIFY_CODE_COUNT` active verify codes at a time
|
||||||
current_app.logger.warning(
|
current_app.logger.warning(
|
||||||
"Too many verify codes created for user {}".format(user_to_send_to.id)
|
"Too many verify codes created for user {}".format(user_to_send_to.id)
|
||||||
|
|||||||
Reference in New Issue
Block a user