启用基本身份验证 Codeigniter rest API

BRG*_*BRG 5 php rest codeigniter

您好,我在理解如何使用 CodeIgniter 和使用https://github.com/chriskacerguis/codeigniter-restserver启用基本身份验证时遇到问题。其余.php:

|--------------------------------------------------------------------------
| REST Login
|--------------------------------------------------------------------------
|
| Set to specify the REST API requires to be logged in
|
| FALSE     No login required
| 'basic'   Unsecure login
| 'digest'  More secure login
| 'session' Check for a PHP session variable. See 'auth_source' to set the
|           authorization key
|
*/
$config['rest_auth'] = 'basic';
Run Code Online (Sandbox Code Playgroud)

我启用基本身份验证和以下我有这个:

/*
|--------------------------------------------------------------------------
| REST Login Usernames
|--------------------------------------------------------------------------
|
| Array of usernames and passwords for login, if ldap is configured this is ignored
|
*/
$config['rest_valid_logins'] = ['admin' => '1234'];
Run Code Online (Sandbox Code Playgroud)

如果我使用 admin 作为用户名和 1234 作为密码登录就可以了。我的问题是如何将用户注册到我的数据库并更新有效的登录配置?当用户注册时,我不必去 rest.php 并将记录添加到 $config['rest_valid_logins'] 但它会自动完成?

任何帮助将不胜感激!!!

小智 3

您可以为 REST 服务器创建 API 密钥,而不是使用基本登录。

在您的平台中创建的每个用户都需要密钥表中的一条记录。这些密钥需要在每个请求的标头中发送。

请检查rest.php 文件。有用于键表的 CREATE TABLE 语句。

您需要更改这三个设置:

$config['rest_keys_table']与表的名称。

$config['rest_enable_keys']具有真正的价值。

$config['rest_key_column']列负责存储关键数据。

因此,每个请求都将由 CodeIgniter 处理,CodeIgniter 将检查标头中发送的 API 密钥是否有效。