【问题标题】:Enable Basic Authentication Codeigniter rest API启用基本身份验证 Codeigniter REST API
【发布时间】:2016-06-02 10:50:04
【问题描述】:

您好,我在了解如何使用 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';

我启用了基本身份验证,下面我有这个:

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

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

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

【问题讨论】:

    标签: php codeigniter rest


    【解决方案1】:

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

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

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

    您需要更改这三个设置:

    $config['rest_keys_table'] 带有表名。

    $config['rest_enable_keys'] 为真值。

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

    因此,每个请求都会被 CodeIgniter 处理,CodeIgniter 会检查 header 中发送的 API 密钥是否有效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-08
      • 2013-06-06
      • 2012-02-13
      • 1970-01-01
      • 1970-01-01
      • 2017-11-27
      相关资源
      最近更新 更多