2009-08-12 2 views
0

Я делаю приложение, которое должно быть для нескольких пользователей. в настоящее время у меня есть файл, который хранит имя пользователя + md5 password hash (с именем пользователя как соль)Хранить пользовательские привилегии - умный способ

Теперь я должен быть расширен, чтобы разные пользователи могли иметь разные привилегии. Как бы вы сохранили их умным способом, чтобы никто не мог их изменить, но для меня все еще хорошо справляться?

Я использую C#

ответ

0

Вы, кажется, новичок. Для вас я могу порекомендовать вам обратиться к поставщику членства ASP.NET.

Но в качестве примечания, пожалуйста, никогда не используйте MD5. Это не требуется, и он сломан, поэтому лучше избегать объяснения причины его использования, когда есть другие совершенно приемлемые нелокализованные хэши.

+0

no md5 + соль? но я не могу быть реорганизован, не так ли? Я делаю md5 с паролем и именем пользователя, которое невозможно реорганизовать, и когда пользователь хочет войти в систему, я делаю то же самое и сравниваю его с сохраненной строкой. – 2009-08-12 09:44:19

1

Я думаю, что лучше использовать механизм базы данных для управления этой операцией (самый простой способ), однако, если вы не предпочитаете использовать базу данных, вы можете использовать тот же файл и добавить ключи, чтобы сделать следующие привилегии:

Ваель RWX

Ahmad RW

K х

из этих линий вы можете увидеть, что Waël чтение, запись, разрешения на выполнение теперь в вашем приложении вы будете читать Permissio n и разрешить/запретить использование.

+0

, но если запись прав пользователя в стиле unix в cleartext в файл, мне нужен файл, который нужно защитить от редактирования, не так ли? как я могу это сделать? – 2009-08-12 09:42:51

+0

Если вы хотите защитить файл, зашифруйте его, чтобы никто не понял смысл текста. –

+0

зашифровать его симметрично? – 2009-08-12 09:55:21