学习目标
完成本单元后,您将能够:
- 描述产品安全团队如何报告漏洞。
- 解释如何在修复安全问题后重新提交您的应用以供审核。
- 列出在批准后启动您的应用的步骤。
面对事实
您刚刚收到了Salesforce安全团队的电子邮件。您的产品已经过审核。你已经等了好几个星期了,所以你很兴奋。但是某种程度上,你害怕打开它:如果你没有通过,该怎么办?
如果你的产品没有通过它的第一次安全审查,它是在一个很好的公司。所有提交的产品中有一半未通过首次安全审核。安全并不容易!如果是这样,我们实际上并不需要安全审查过程。
让我们来探讨两种可能的安全审查结果 – 不是传递和传递 – 因为在开发产品时,您可能会遇到这两种情况。
咬牙坚持住吧
内容
因为我们一直在谈论“通过”安全审查,所以您可能会将安全审查视为您通过或未通过的考试。但它并非真的如此黑白。将审查视为安全团队的反馈意见,以帮助您提高产品质量并增加成功发布的机会。
如果您的产品未通过其安全审核,您会将此反馈作为报告列出安全团队发现的漏洞。您收到的电子邮件还包含有关如何修复这些漏洞的详细说明。
关于报告的好处是,它会给你找到的问题的具体描述。它在报告顶部提供了超链接的内容表,如下所示:
- SOQL注入漏洞
…
- 调试漏洞中的敏感信息
…
- 信息披露漏洞
…
- CRUD / FLS强制执行漏洞
…
每个条目都是一种安全漏洞。每个条目下面是发现漏洞的组件的名称。在目录下面是每个漏洞的详细描述。点击一个条目即可进入相应的描述。
我们去广泛。你深入
该报告列出了您的产品中发现的各种漏洞,但不是每个实例。如果您在列表中看到SOQL注入漏洞,请查看您的所有代码(而不仅仅是提到的组件),以了解SOQL注入机会。
我们还可以提醒您我们利用哪些漏洞进入您的应用程序,但我们无法做出详尽的列表。无论如何,您的团队在代码库中拥有更多的专业知识。因此,一旦知道这些漏洞存在,您就可以更快地找到这些漏洞。
测试不完美
我们只能花费有限的时间在您的产品中查找漏洞。有时,当重新审核应用时,我们会发现一些新类型的漏洞,这是我们第一次看不到。测试不全面,无论是宽度还是深度。因此,当您查看代码库时,请注意各种漏洞,即使报告中没有这些漏洞。
在修复漏洞时,请不要忘记对您的产品重复使用扫描仪和对抗性测试,就像您在审查之前一样。它们有助于防止新漏洞潜入您的代码中。
检查您的做法以及您的准则
坐下来和你的团队聊聊,以处理安全审查的结果。以下是您可以用来开始对话的一些问题:
- 这些漏洞是如何通过您自己的安全审查?
- 你能做些什么来尽快找到它们吗?
- 会有更多测试帮助吗?
- 会有更多的人员或更多的时间帮助?
- Salesforce的安全培训会有更多帮助吗?
- 您是否从可应用于您的开发过程的安全审查中学到了什么?
没有完美的战略来实现安全 – 它需要奉献和决心。但是,您总是可以通过整合从每次安全审查中学到的内容来改进整体战略。
当然,你的成功就是我们的成功!如果您在修复漏洞或检查流程方面需要指导,请联系您的合作伙伴客户经理或技术布道者。如果您需要技术安全建议,我们的信任团队需要办公时间。
冲洗,重复
您已经修复了您的应用并改进了您的开发流程。你不能相信一切都更安全,你不能等待安全评论复赛。做最糟糕的Salesforce产品安全团队!
安全团队绝不会因为挑战而退缩。你只需要引起他们的注意。您是如何做的取决于您是否修复了在Salesforce平台上运行的代码。
如果您更改了在Salesforce平台上运行的代码,则必须上传新版本的托管软件包。如果您还对包进行了外部更改,请在完成向导时添加该信息:
- 在发布控制台中,单击“Listings”选项卡。
- 点击您的列表。
- 通过单击“Change Packages”将新的托管包上传到您的列表。
- 点击软件包上“Start Review”字段旁边的开始查看。
- 通过安全审查向导并按照正常的提交过程。
如果您仅修复了在Salesforce外部运行的代码,请编辑您现有的安全审核提交信息:
- 在发布控制台中,单击“Listings”选项卡。
- 点击您的列表。
- 点击软件包上“Edit Review”字段旁边的编辑评论。
- 浏览安全审查向导并更新任何已更改的信息。
- 在合作伙伴社区中记录一个案例,让产品安全团队知道您正在重新提交您的产品以供审核。在评论中包含您的包名称,ID和版本。
无论哪种方式,您不必支付另一设置费。只要您的软件包ID和您的名称空间不变,我们认为您的重新提交与以前一样。和第一轮一样,安全审查过程需要6到8周时间。
装运它
当您的产品通过安全审查时,您会收到一封很好的电子邮件,表示已通过审核。你做到了!那并不坏,是吗?祝贺你的团队中的每一个人,享受这一刻。以你最喜欢的方式庆祝。
当那个神奇的时刻过去时,是时候推出你的产品了。安全审查电子邮件让您了解此过程中的下一步操作。在发布控制台中完成您的列表并准备好您的营销团队。
我们可以帮助您启动。您的合作伙伴客户经理可以与您合作,并且合作伙伴社区可以在AppExchange上分发,营销,销售和支持您的产品。
然后坐下来看着你的数字增长。