Перейти к содержимому

Как удалить сохранённые пароли из windows.

Задача удалить сохранённые пароли из windows от пользователя

первый вариант

# Получаем все строки из cmdkey
$credentials = cmdkey /list

$searchTerm = "tcell"
# Переменная для хранения целевых ресурсов
$target = ""

# Проходим по всем строкам и ищем нужные
foreach ($cred in $credentials) {
    Write-Host "Текущая строка: $cred"  # Выводим каждую строку для диагностики
    
    # Если строка содержит "Target", сохраняем целевой ресурс
    if ($cred -match "Target: (.*)") {
        $target = $matches[1].Trim()
        Write-Host "Найден целевой ресурс: $target"
    }

    # Если строка содержит $searchTerm, то удаляем соответствующий целевой ресурс
    if ($cred -match $searchTerm) {
        Write-Host "Найдена строка с tcell: $cred"  # Выводим строку с 

        # Удаляем запись с соответствующим целевым ресурсом
        if ($target) {
            $deleteResult = cmdkey /delete $target
            Write-Host "Результат удаления: $deleteResult"
        } else {
            Write-Host "Не найден целевой ресурс для удаления."
        }
    }
}

# Повторно выводим список учетных данных для проверки
Write-Host "Обновленный список учетных данных:"
cmdkey /list

Версия 2 для exe

# Устанавливаем кодировку консоли в UTF-8
$OutputEncoding = [System.Text.Encoding]::UTF8

# Добавляем сборку для работы с InputBox
Add-Type -AssemblyName "Microsoft.VisualBasic"

# Создаем поле для ввода с запросом от пользователя
$searchTerm = [Microsoft.VisualBasic.Interaction]::InputBox("Введите строку для поиска", "Поиск учетных записей")

# Если строка не введена, выходим из скрипта
if (-not $searchTerm) {
    Write-Host "Вы не ввели строку для поиска. Скрипт завершен."
    exit
}

# Получаем все строки из cmdkey
$credentials = cmdkey /list

# Переменная для хранения целевых ресурсов
$deletedTargets = @()

# Проходим по всем строкам и ищем нужные
foreach ($cred in $credentials) {
    # Если строка содержит "Target", сохраняем целевой ресурс
    if ($cred -match "Target: (.*)") {
        $target = $matches[1].Trim()
    }

    # Если строка содержит $searchTerm, то удаляем соответствующий целевой ресурс
    if ($cred -match $searchTerm) {
        # Удаляем запись с соответствующим целевым ресурсом
        if ($target) {
            $deleteResult = cmdkey /delete $target
            # Добавляем удаленную запись в список
            $deletedTargets += $target
        } else {
            # Пропускаем вывод ошибок, если не найден целевой ресурс
            # Write-Host "Не найден целевой ресурс для удаления."
        }
    }
}

# Выводим информацию о том, что было удалено
if ($deletedTargets.Count -gt 0) {
    Write-Host "Удалены следующие записи:"
    $deletedTargets | ForEach-Object { Write-Host $_ }
} else {
    Write-Host "Не было найдено и удалено записей."
}

# Повторно выводим список учетных данных для проверки
#Write-Host "Обновленный список учетных данных:"
#cmdkey /list

 

Similar Posts:

Метки:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Яндекс.Метрика