39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace Config;
|
||
|
|
|
||
|
|
use CodeIgniter\Config\BaseConfig;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Konfigurasi Throttler untuk Rate Limiting
|
||
|
|
*
|
||
|
|
* Digunakan untuk mencegah brute force attacks pada login
|
||
|
|
* dan endpoint lainnya yang memerlukan rate limiting.
|
||
|
|
*/
|
||
|
|
class Throttler extends BaseConfig
|
||
|
|
{
|
||
|
|
/**
|
||
|
|
* --------------------------------------------------------------------------
|
||
|
|
* Token Prefix
|
||
|
|
* --------------------------------------------------------------------------
|
||
|
|
*
|
||
|
|
* Prefix untuk token yang digunakan dalam cache key.
|
||
|
|
* Membantu menghindari collision dengan cache key lainnya.
|
||
|
|
*/
|
||
|
|
public string $prefix = 'throttler_';
|
||
|
|
|
||
|
|
/**
|
||
|
|
* --------------------------------------------------------------------------
|
||
|
|
* Error Messages
|
||
|
|
* --------------------------------------------------------------------------
|
||
|
|
*
|
||
|
|
* Pesan error yang akan ditampilkan ketika rate limit tercapai.
|
||
|
|
* Dapat disesuaikan sesuai kebutuhan aplikasi.
|
||
|
|
*/
|
||
|
|
public array $errorMessages = [
|
||
|
|
'en' => 'Too Many Requests',
|
||
|
|
'id' => 'Terlalu banyak percobaan. Silakan coba lagi nanti.',
|
||
|
|
];
|
||
|
|
}
|
||
|
|
|