В даний час я керую і переосмислюю частину програмного забезпечення, яке використовується в моїй компанії вже більше десяти років. Одним з елементів цього додатка є свого роду режим адміністрування або користування, який забезпечує такі можливості, як деякий додатковий / внутрішній вхід, а також можливість вимкнути межі введення.
Історично цей режим був увімкнений, помістивши спеціально названий файл у певному місці в системній директорії Windows (обидва вони були жорстко закодовані у програму), при цьому файл отримав назву "something.DLL", хоча він був порожнім ASCII файл, а не dll.
Тому я нещодавно додав код і трохи модальної форми, яка дозволяє користувачеві ввести пароль адміністратора, щоб увімкнути цю функціональність. Це встановлений пароль, а не конкретний для користувача. Коли вводиться правильний пароль, він робить щось таке ж, створюючи «ключ-файл» у кореневому каталозі програм, щоб програма могла запуститися в режимі адміністратора, якщо цей файл присутній.
Зараз менеджеру відділу, для якого це програмне забезпечення в основному, не дуже подобається ця ідея. Він вважає, що якщо у нас є просто простий заздалегідь заданий пароль, він легко "вийде", і він не хоче, щоб недосвідчені користувачі отримували доступ до цих додаткових функцій.
Отже, моє питання полягає в тому, які існують інші методи для надання такого доступу, які були б дещо безпечнішими? Це майже все, що стосується підтримки та управління цим програмним забезпеченням, тому все, що майже не повністю вбудовано або не автоматизовано, не допоможе (наприклад, надсилання запитів на "ліцензійні ключі" чи щось подібне до цього).
Примітки: Ця програма написана у VB.NET (.NET 4.0), і я зараз планую використовувати розгортання за натисканням одного разу, коли буде виконана нова версія.