Security Mule 4安全属性占位符不工作

Security Mule 4安全属性占位符不工作,security,anypoint-studio,mulesoft,property-placeholder,mule4,Security,Anypoint Studio,Mulesoft,Property Placeholder,Mule4,这是我的配置文件,我在其中定义了属性文件ie dev.properties,其中包含一些加密值。我已定义安全属性占位符,但它不起作用 <global-property doc:name="Global Property" doc:id="7080a89f-d39c-485d-99c4-b35337ab62c4" name="env" value="dev" /> <global-property doc:name="Global Property" doc:id="5d

这是我的配置文件,我在其中定义了属性文件ie dev.properties,其中包含一些加密值。我已定义安全属性占位符,但它不起作用

<global-property doc:name="Global Property" doc:id="7080a89f-d39c-485d-99c4-b35337ab62c4" name="env" value="dev" />
    <global-property doc:name="Global Property" doc:id="5d1fb026-a34f-490f-9b50-7a9bcb5cdf83" name="enc.key" value="password" />
    <configuration-properties doc:name="Configuration properties"
        doc:id="7448fcf9-e3ef-41b4-879e-9551ab99aa29" file="properties/${env}.properties" />
        <secure-properties:config name="Secure_Properties_Config" doc:name="Secure Properties Config" doc:id="0bbad3ed-42bb-4e13-bc88-e9c1fc6d21f4" file="properties/${env}.properties" key="${enc.key}"  >
    </secure-properties:config>

我已使用AES算法使用值密码进行加密。但是,无法使用提供的配置对这些值进行解密。

首先使用配置属性加载相同的属性文件,然后再次使用安全属性。如果文件包含安全属性,则仅使用安全属性加载该文件一次

其次,您需要使用${secure:myProp.someProp}语法来读取安全属性,而不仅仅是${myProp.someProp}

如果对安全属性和非安全属性使用同一个文件,则仍然必须对非安全属性使用${secure:myProp.someProp}

因此,最好将属性文件拆分为${env}.properties(非安全属性)和${env}-secure.properties(安全属性)。然后可以使用${env}.properties的配置属性和${env}-secure.properties的安全属性


如果您遇到特定错误,请用详细信息更新问题。

谢谢@ryan在添加${secure:myProp.someProp}关键字后,它仍在工作。