加密的自定义字段是一种安全的方式来存储Apex标注的有限生命期OAuth令牌吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了加密的自定义字段是一种安全的方式来存储Apex标注的有限生命期OAuth令牌吗?相关的知识,希望对你有一定的参考价值。

Apex标注用于将Salesforce与SAP Concur集成。

  1. Named Credential是不兼容的,因为Concur在令牌到期后返回403,而SF期望401知道何时刷新令牌。
  2. 无法写入自定义元数据,因此无法刷新访问令牌,然后将其存储回记录中。此外,它仅由RBAC保护。
  3. 托管包不适合用例。
  4. 自定义设置的最大字段长度为255,令牌长度为数千个字符。与元数据相同的安全问题。

对于自动解决方案,其中存储和刷新服务帐户的访问令牌以用于由用户发起的标注而不需要它们进行身份验证,具有加密自定义字段的自定义对象是否可行(尽管远非理想)解决方案?

技术上的缺点包括这样的事实:令牌数量可以在数千个字符中,需要在十几个或更多字段之间进行分割,因为加密字段的最大长度为175个字符,以及它与之相关的事实。集成到特定的数据记录。

答案

如果Named Credential无效,那么您没有一个很好的解决方案。我不会将令牌存储在字段中,因为您的用户将能够找到它们。我会创建一个私有类并将令牌存储在那里。

以上是关于加密的自定义字段是一种安全的方式来存储Apex标注的有限生命期OAuth令牌吗?的主要内容,如果未能解决你的问题,请参考以下文章

Apex 中的自定义迭代器

加密钱包中的“冷存储”和“热存储”该如何选择?

如何安全地存储加密密钥?

Django:迭代自定义选择字段中的选项

sql APEX的自定义错误处理功能

在交互式网格 Oracle Apex 中的自定义验证中突出显示列