Есть ли способ зашифровать имя пользователя в WSO2 Identity Server? - PullRequest
3 голосов
/ 17 июня 2019

Я использую WSO2 Identity Server v5.6.0.
Я хочу зашифровать имена пользователей и электронные письма, сохраненные в базе данных.

В документации говорится, что это часть персональных данных.Защита WSO2 IS хэширует учетные данные пользователя: WSO2IS documentation screenshot

Но в таких таблицах, как IDN_OAUTH2_ACCESS_TOKEN IDN_IDENTITY_USER_DATA, столбец UserName содержит данные в виде простого текста.

Мой вопрос:
Как кодировать или шифровать столбец UserName, чтобы сделать личные данные более безопасными?
Или в общих чертах, Как я могу WSO2 зашифровать некоторую информацию перед ее сохранением вбазы данных?

Ответы [ 2 ]

1 голос
/ 17 июня 2019

В документации говорится, что в рамках защиты личных данных WSO2 IS хэширует учетные данные пользователя

Пароль пользователя хешируется по умолчанию с использованием хранилища пользователей по умолчанию, вы можете увидеть http://xacmlinfo.org/2015/06/10/user-password-hashing-with-wso2-identity-server-wso2is/ Для других типов пользовательских хранилищ все зависит от реализации, лежащей в основе (например, LDAP)

Также можно зашифровать токен доступа, см. https://docs.wso2.com/m/mobile.action#page/85392668

Как кодировать или шифровать столбец UserName, чтобы сделать личные данные более безопасными?

Или в общих чертах, как я могу WSO2 зашифровать некоторую информацию перед ее сохранением в базе данных?

У тебя может быть простой или сложный способ.

Легко - используя пользовательское хранилище JDBC, вы можете настроить «расширенные» свойства и определить свои собственные команды SQL для обновления или запроса данных (включая шифрование данных). https://docs.wso2.com/m/mobile.action#page/87705730

Более сложный - вы можете создать собственную реализацию пользовательского хранилища https://docs.wso2.com/m/view-rendered-page.action?abstractPageId=92523884

1 голос
/ 17 июня 2019

Я незнаком с WSO2, но:

1) Хеширование не совпадает с шифрованием.Хеширование (в идеале) не обратимо, и в этом суть.Шифрование - это обратимый хэш , в котором источник (открытый текст) может быть восстановлен.

2) Имя пользователя может быть ссылкой, необходимой WSO2 для расшифровки или перекрестной ссылки на данные, предоставленные в любом хэше (или шифровании).Я надеюсь, что нет, но ....

3) Шифрование / хеширование вполне может иметь место, когда данные находятся в пути, а не когда данные находятся в состоянии покоя.Если вы просматриваете хранилище данных и видите незашифрованные имена пользователей, это может быть просто потому, что в хранилище на вашем сервере (или в другом месте) данные не защищены механизмом шифрования / хэширования WSO2.

 - Are other fields in your database table hashed? 
 - Can you see any [other] non-hashed output to your endpoint browser (ie end user)? 

4)

[Я хочу] сделать личные данные более безопасными

Как шифрование имен пользователей поможет с этим?Какой тип кражи данных это предотвратит?Существуют разные способы защиты разных данных от разных угроз;Например, хэширование (как указано в связанном документе) полностью отличается от шифрования (как вы хотите, чтобы достичь).

Если вы можете ответить на вышесказанное, это очень поможет.Спасибо.

...