声纳违规:安全性 - 使用 byte[] 时直接存储数组 [英] Sonar Violation: Security - Array is stored directly when using byte[]

查看:19
本文介绍了声纳违规:安全性 - 使用 byte[] 时直接存储数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我确实遇到过以下 2 篇关于类似问题的帖子声纳违规声纳违规但是,我的问题是 byte[]

I did come across the following 2 posts about a similar issue Sonar Violation and Sonar Violation But, my problem is with byte[]

以下是我在声纳中收到此警告的代码片段

Following is the code snippet for which I get this warning in Sonar

public void setValue(byte[] value) {
    this.value = value;
}

我查看了解决方案并进行了以下更改

I looked at the solutions and made the following changes

public void setValue(byte[] value) {
    if(value == null) {
        this.value = new byte[0];
    } else {
        this.value= Arrays.copyOf(value, value.length); 
    }
}

即便如此,我在 Sonar 中也收到了相同的安全违规警告.我收到这个警告是因为它是 byte[] 并且字节数组需要以不同的方式处理吗?

Even then, I get the same Security violation warning in Sonar. Am I getting this warning because it is byte[] and byte arrays need to be handled differently?

推荐答案

您可以使用以下方法解决 byte[] 的问题

You could use the following to resolve the issue with byte[]

value.clone()

这篇关于声纳违规:安全性 - 使用 byte[] 时直接存储数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆