Сохраненные имена пользователей и пароли - PullRequest
2 голосов
/ 02 июля 2010

Я пишу приложение, которое должно хранить данные для входа в систему для нескольких учетных записей (XMPP) в Windows.В настоящее время приложение сохраняет их в «Сохраненных именах и паролях» Windows, используя CredRead и CredWrite.И вот проблема: имя входа для учетной записи XMPP не может быть изменено (это JID учетной записи), но Windows хранит только пары имя пользователя / пароль под заданным целевым именем.Я использую что-то вроде «xmpp: account@server.tld» для целевого имени и вообще не использую имя пользователя при входе в систему.Пользователь даже не может установить имя пользователя из приложения (вместо него будет автоматически установлено значение "account@server.tld").

Теперь я хотел бы запретить изменение имени пользователя начто-то другое от пользователя (с помощью панели управления или rundll32.exe keymgr.dll, KRShowKeyMgr) или другого приложения, так как это в настоящее время возможно и как-то сбивает с толку, потому что фактическое значение в любом случае игнорируется.Если я открою диалоговое окно «Сохраненные имена пользователей и пароли» (используя rundll32.exe keymgr.dll, KRShowKeyMgr), записи, созданные моим приложением, будут перечислены как «xmpp: account@server.tld (LegacyGeneric)» и могут быть отредактированы с помощью «Редактировать ... ».В списке также есть запись для Windows Live (в списке «live_account@hotmail.com (WindowsLive)»), имя пользователя которой нельзя изменить (при попытке этого появится окно с сообщением: «Windows не может сохранить информацию для входа в систему.уверен, что информация верна и что все обязательные поля заполнены. ".

И вот (наконец) мой вопрос: могу ли я получить такое поведение и для моего приложения? Как я могу изменить тип учетных данных на что-тоотличается от "LegcyGeneric"? Или есть ли лучший способ сохранить только пароль для данного имени входа (возможно, с помощью Windows Data Protection), но при этом использовать какой-то "стандартный" способ хранения Windows?

Любойсоветы и ответы приветствуются.

...