Должны ли секреты API храниться в хешированном виде?

0

Я хочу сделать автоматическое подключение к API через простое задание cron. Обычно API-интерфейсы защищены ключом API, не так ли? API, с которым я работаю, хочет, чтобы я отправил имя пользователя и пароль, которые используются для веб-журнала.

Поэтому, если я хочу создать скрипт для этого, мне нужно будет сохранить пароль. Я никогда не хочу хранить это как обычный текст. Но поскольку я не храню пароль "reference", но пароль "user input", я не могу понять, как это сделать.

  • 0
    Какая служба нуждается в учетных данных?
  • 0
    Служба, в которую мне нужно отправить свою информацию.
Показать ещё 6 комментариев
Теги:
security

2 ответа

0

В этом контексте сохранить обычный текстовый пароль - разница между службами, которые необходимы вашему приложению (то есть базами данных и API), и паролями клиентов, заключается в том, что в последнем случае клиент может предоставить пароль, когда это необходимо. Так как человек не может этого сделать в первом случае, его нужно хранить на диске.

Это не помогает безопасности, если хешируются служебные пароли. Если хешированный пароль предоставляет системному доступу к базе данных API, то хеш является паролем, и, таким образом, хэширование усложняет ненужную дополнительную защиту. Как только злоумышленник нашел способ читать/записывать вашу систему подачи (например, через SSH или загружать несанкционированный скрипт на вашем диске), ваша безопасность все равно была скомпрометирована.

Учитывая все это, почему это хорошая идея для хеш-паролей и паролей пользователей? Причина в том, что, к сожалению, пользователи часто практикуют плохую привычку к безопасности при повторном использовании своих пар электронных/паролей через несколько сервисов. Если он обнаружен (из обычного текста, обратимого шифрования или слабого хэширования), он может поставить под угрозу их безопасность и в других местах.

  • 0
    Я согласен, я должен хранить пароль на диске, но он будет небезопасным. Если кто-то получит это, он сможет войти в службу we под этой учетной записью.
  • 0
    Как бы они его нашли, @StefR? Убедитесь, что они не могут этого сделать, и вы достаточно защищены. Многие современные API работают таким образом - они генерируют «секрет», который нельзя передавать никому, кроме команды разработчиков.
Показать ещё 4 комментария
0

Не знаете, в какой операционной системе вы работаете, но у большинства есть возможности для хранения зашифрованных данных.

В Windows есть нечто, называемое API защиты данных. Он позволяет шифровать и расшифровывать данные (имя пользователя и пароль в вашем случае) на основе машинного ключа.

Если вы запустите службу под специальной учетной записью, другим пользователям/приложению на вашем компьютере будет невозможно расшифровать ваши данные.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню