Получение указанного имени пользователя учетных данных Windows (Windows Vault)

голоса
1

Следующая проблема происходит. Наша компания меняет все пароли пользователей.

Они попросили меня написать программу так, чтобы пользователь мог ввести его или ее имя пользователя и-х новый пароль, так это будет заменен в менеджере окон мандатной. (Windows Vault).

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

Я не знаю имя Target, так что я не могу найти учетные данные с именем Target.

Я сделал следующий скрипт с https://www.nuget.org/packages/CredentialManagement/ :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using CredentialManagement;
using System.Diagnostics;
using System.Security;
using Microsoft.Win32.SafeHandles;

namespace RU_PWReplacer
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            GetCredentials();
        }

        public void GetCredentials()
        {
            List<Credential> Credentials = new List<Credential>();
            List<string> TargetPath = new List<string>();

            TargetPath.Add(test1.nl);
            TargetPath.Add(test2.nl);
            TargetPath.Add(test3.nl);

            for (int i = 0; i < TargetPath.Count; i++)
            {
                Credential Try_ToFind_Credential = new Credential { Target = TargetPath[i], Type = CredentialType.DomainPassword };
                Credentials.Add(Try_ToFind_Credential);
            }
            foreach (Credential c in Credentials)
            {
                if (!c.Exists())
                {
                    Console.Write(Not Found\n);
                }
                else
                {
                    Console.Write(Found\n);
                }
            }
        }
    }
}

Проблема заключается в том, что таким образом я ищу с именем Target, и это не возможность, потому что может быть много имен целей. Так ищет Имя пользователя является более эффективным.

Если бы нашел этот пост: Как хранить и извлекать учетные данные из учетных данных менеджера для Windows Vault?

Проблема с этим состоит в том, что он все еще использует имя Target, чтобы найти удостоверение.

Я надеюсь, что вы, ребята, можете мне точку в правильном направлении.

С наилучшими пожеланиями,

Деннис.

Задан 26/03/2015 в 09:01
пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more