Saat ini saya mengelola dan memfaktorkan ulang perangkat lunak yang telah digunakan di perusahaan saya selama lebih dari satu dekade sekarang. Salah satu elemen dari aplikasi ini adalah semacam admin atau mode power-user yang menyediakan hal-hal seperti beberapa input tambahan / internal serta kemampuan untuk mematikan batas input.
Secara historis mode ini telah dihidupkan dengan menempatkan file bernama khusus di tempat tertentu di direktori sistem windows (keduanya hard coded ke dalam aplikasi), file tersebut bernama 'something.DLL', meskipun itu kosong File ASCII dan bukan dll.
Jadi saya baru-baru ini menambahkan beberapa kode dan bentuk modal kecil yang memungkinkan pengguna untuk memasukkan kata sandi admin untuk mengaktifkan fungsi ini. Ini adalah kata sandi yang ditetapkan, bukan khusus pengguna. Ketika kata sandi yang benar dimasukkan, ia melakukan hal yang sama dengan membuat 'file kunci' di direktori root aplikasi sehingga program dapat mulai dalam mode admin jika file itu ada.
Sekarang manajer departemen tempat software ini kebanyakan tidak begitu menyukai gagasan itu. Dia berpikir bahwa jika kita hanya memiliki kata sandi yang sederhana dan telah diset sebelumnya, kata sandi itu akan dengan mudah 'keluar', dan dia tidak ingin pengguna yang tidak berpengalaman mengakses fitur-fitur tambahan itu.
Jadi pertanyaan saya adalah, metode apa yang ada untuk menyediakan akses semacam ini yang agak lebih aman? Cukup banyak hanya saya ketika datang untuk memelihara dan mengelola perangkat lunak ini, sehingga apa pun yang hampir tidak sepenuhnya dibangun atau otomatis tidak akan membantu (seperti mengirim permintaan untuk 'kunci lisensi' atau sesuatu yang mirip dengan itu).
Catatan: Aplikasi ini ditulis dalam VB.NET (.NET 4.0), dan saya saat ini berencana menggunakan penyebaran klik-sekali ketika versi baru selesai.