Мне интересно услышать о корпоративных решениях для обработки SSN. (Я выглядел довольно тяжело для любого ранее существующего поста на SO, включая просмотр автоматизированного списка связанных вопросов terriffic SO, и ничего не нашел, так что, надеюсь, это не повторится.)
Во-первых, я думаю, что важно перечислить причины, по которым системы / базы данных используют SSN: (обратите внимание - это причины для де-факто текущего состояния - я понимаю, что многие из них не хороши причины)
Требуется для взаимодействия с внешними объектами. Это наиболее допустимый случай, когда внешние сущности, с которыми взаимодействует ваша система, требуют SSN. Обычно это государственные, налоговые и финансовые.
SSN используется для обеспечения уникальности всей системы.
SSN стал внешним ключом по умолчанию, который используется внутри внутри предприятия для выполнения межсистемных объединений.
SSN используется для аутентификации пользователя (например, вход в систему)
Корпоративное решение, которое мне кажется оптимальным, заключается в создании единого репозитория SSN, к которому обращаются все приложения, которым требуется поиск информации о SSN. Этот репозиторий заменяет истинный SSN глобально уникальным случайным 9-значным числом (ASN). Я вижу много преимуществ этого подхода. Во-первых, он, очевидно, обладает высокой обратной совместимостью - все ваши системы «просто» должны пройти основную синхронизированную одноразовую очистку данных, где они заменяют реальный SSN альтернативным ASN. Кроме того, он централизован, что сводит к минимуму возможности для проверки и соответствия. (Очевидно, что в качестве негатива он также создает единую точку отказа.)
Этот подход позволил бы решить проблемы 2 и 3, не требуя поиска для получения реального SSN.
Для проблемы # 1 авторизованные системы могут предоставить ASN и получить реальный SSN. Это, конечно, будет сделано через безопасные соединения, и запрашивающие системы никогда не сохранят полный SSN. Кроме того, если запрашивающей системе нужны только последние 4 цифры номера SSN, это все, что когда-либо будет передано.
Проблема № 4 может быть обработана так же, как проблема № 1, хотя, очевидно, лучше всего отказаться от предоставления пользователям SSN для входа в систему.
Об этом есть пара статей: