我使用heroku在php中创建了一个登录页,我在Salesforce中创建了一个自定义文本(加密)字段,我想用php解密它,以便将用户输入的数据与解密的数据进行比较。我怎样才能做到这一点?如果有人有相同的解决方案,请帮忙。

while ($row = pg_fetch_row($result)) {
    if (base64_decode($row[1]) == $_POST['password']) {
        echo "You are a validated user/n";
        echo "HELLO" . $_POST['email'];
        exit;
    }
}

代码:
$query = "SELECT Email , Password__c FROM salesforce.contact ;";
$result= pg_query($query);
$row = pg_fetch_row($result);
echo "Row password " .$row[1];
echo "<br>";
echo "Post password " .$_POST['password'];
echo "<br>";

输出:
($row[2]=>)行密码***********
邮政密码123456789
enter image description here

最佳答案

这里的问题是您不知道Salesforce中的数据是如何加密的。默认情况下,从这些字段上的查询返回的数据只是******,外部应用程序无法对此进行解密。
如果要查看这些字段中的值,则需要查询用户具有View Encrypted Data权限,该权限可以在用户配置文件上或通过权限集授予。
php - 在php中解密Salesforce自定义字段-LMLPHP
一旦您的用户拥有此权限,他们将能够在以下位置查看加密文本字段的纯文本值:
用户界面
批量api
其余api
soap api
调试日志(尽管序列化包含的sObject时不是)

10-05 20:31
查看更多