首页 > 解决方案 > 在 Wordpress 中使用带有可见 API 密钥的 WP Super Cache 的单个 Cloudflare 帐户

问题描述

我们开始在几个 Wordpress 客户帐户上使用 Cloudflare,并在 CDN 设置中注意到我的电子邮件地址和 API 密钥对客户可见。

这是一个潜在的安全问题,其他人可以看到我的 Cloudlflare 电子邮件地址和 API 密钥吗?我应该为每个客户帐户使用 1 个 Cloudflare 帐户吗?

这是一个屏幕截图(我已经模糊了 API 密钥并删除了控制台中的电子邮件输入框),但这两个值对客户都是可见的。

dpr

他们可以用这两条数据做的最糟糕的事情是什么?

标签: wordpresscachingwoocommercecdncloudflare

解决方案


您必须使用令牌而不是全局 api 密钥。您仅对某些区域严格令牌

在此处输入图像描述

这只不能解决问题,您必须手动修改 wp 最快的缓存插件来修改请求以匹配 API 令牌的使用。请求可以在inc\cdn.php

修改后的文件: https ://gist.github.com/ahmed-abdelazim/7c8170f7fc4e821c6b015d770fcbf14a

所以

                $header = array("method" => "DELETE",
                                'headers' => array(
                                                "X-Auth-Email" => $email,
                                                "X-Auth-Key" => $key,
                                                "Content-Type" => "application/json"
                                                ),
                                "body" => '{"purge_everything":true}'
                                );

被转换为

                $header = array("method" => "DELETE",
                                'headers' => array(
                                                //"X-Auth-Email" => $email,
                                                "Authorization" => "Bearer ".$key,
                                                "Content-Type" => "application/json"
                                                ),
                                "body" => '{"purge_everything":true}'
                                );

这在 cdn.php 文件的插件中发生了五次


推荐阅读