实体值属性包含特殊字符

问题描述

我已经绑定在 OCB 中插入一个带有编码属性的实体:

{
        "id": "prueba-tipo-string2","type": "StringParser","dateObserved": {
            "type": "DateTime","value": "2020-08-13T08:56:56.00Z"
        },"password": {
            "type": "text","value": "U2FsdGVkX10bFP8Rj7xLAQDFwMBphXpK/+leH3mlpQ="
        }
    }
{
    "error": "BadRequest","description": "Invalid characters in attribute value"
}

解决方法

Orion 出于安全原因(某些情况下的脚本注入攻击)限制了某些字符的使用,请参阅 this piece of documentation。特别是 = 属性 password 中的 value

您可以避免这种情况,例如,将密码编码为 base 64,或者在将密码存储到 Orion 之前使用 URL 编码。

在属性类型中使用 TextUnrestricted 的另一种替代方法。这种特殊的属性类型不检查属性值是否包含禁止字符。但是,它可能有安全隐患,使用时风险自负!