Alat sederhana untuk kata sandi membatasi lingkungan pementasan.
Saat membuat atau memperbarui situs web, praktik yang baik untuk mempublikasikan perubahan pada lingkungan pementasan untuk ditinjau sebelum ditayangkan.
Paket ini membantu mengamankan situs web pementasan di belakang halaman login yang sederhana dan mudah diakses. Ini lebih mudah digunakan daripada otentikasi dasar dan mengingat login Anda di cookie, jadi Anda tidak harus terus memasukkan kata sandi Anda.
Instal via Composer:
composer require studio24/staging-site-passsword:^1.0
Kata sandi situs pementasan Anda perlu disimpan sebagai hash aman. Anda dapat menghasilkan ini melalui kata sandi_hash atau dengan menggunakan skrip baris perintah yang disediakan.
php vendor/bin/password-hash.php
Todo
Simpan hash kata sandi dalam variabel lingkungan atau konstanta php. Contoh di bawah ini adalah untuk kata sandi "test123"
Variabel Lingkungan:
putenv ( ' STAGING_SITE_PASSWORD=$2y$10$pvDrmW9GW0bLVDMtLwLnn.mFof5eQQwlozZ5kYK7xijQRVAWUw0FK ' );
PHP Constant:
define ( ' STAGING_SITE_PASSWORD ' , ' $2y$10$pvDrmW9GW0bLVDMtLwLnn.mFof5eQQwlozZ5kYK7xijQRVAWUw0FK ' );
Atau di PHP:
$ controller -> auth -> setPasswordHash ( $ hash );
Todo
Aktifkan halaman login situs pementasan melalui:
$ controller = new Studio24 StagingSitePassword Controller ();
if ( $ controller -> isStaging ()) {
$ controller -> authenticate ();
}
Jika Anda ingin menyesuaikan opsi apa pun, Anda dapat melakukannya melalui objek pengontrol. Pastikan Anda menambahkan kode Anda sebelum $controller->authenticate()
dijalankan. Misalnya:
$ controller = new Studio24 StagingSitePassword Controller ();
$ controller -> loginPage -> setPlaceholder ( ' title ' , ' Login to My Website ' );
if ( $ controller -> isStaging ()) {
$ controller -> authenticate ();
}
Anda dapat menyesuaikan teks apa pun di halaman login melalui $controller->loginPage->setPlaceholder($name, $value)
.
Sesuaikan judulnya:
$ controller -> loginPage -> setPlaceholder ( ' title ' , ' Login to My Website ' );
Kustomisasi teks footer (Anda dapat menyertakan html):
$ controller -> loginPage -> setPlaceholder ( ' footer ' , ' Get support from <a href="mailto:[email protected]">Studio 24</a> ' );
Daftar lengkap placeholder:
Placeholder | Konten default |
---|---|
title | Masuk ke situs web pementasan |
footer | |
password_field_label | Kata sandi |
submit_field_label | Login |
title_prefix_on_error | Kesalahan: |
error_message_title | ada masalah |
error_message | Kata sandi salah |
show | Menunjukkan |
hide | Bersembunyi |
show_password | Tampilkan kata sandi |
hide_password | Sembunyikan Kata Sandi |
Secara default, cookie login diatur untuk kedaluwarsa setelah 1 hari. Anda dapat menyesuaikan ini melalui:
$ controller -> auth -> setCookieLifetime ( 3600 );
Ini mengatur masa hidup cookie dalam hitungan detik.
Anda juga dapat mengatur ini dalam beberapa hari:
$ controller -> auth -> setCookieLifetimeInDays ( 7 );
Anda juga dapat mengubah nama cookie (default adalah staging_site_remember_login
):
$ controller -> auth -> setCookieName ( ' remember_me ' );