Come si fa a sapere quali parametri XML un tag configurazione di Spring ha?
-
12-09-2019 - |
Domanda
Stavo leggendo un articolo che ha mostrato la seguente configurazione XML Primavera di sicurezza:
<authentication-provider>
<password-encoder hash="sha" />
<jdbc-user-service data-source-ref="dataSource" />
</authentication-provider>
Mi sono chiesto se la password-encoder potrebbe richiedere una combinazione di parametri che renderebbero usare SHA-256. Ho trovato facilmente il costruttore Java per il ShaPasswordEncoder , ma come posso dire se il tag password encoder prende l'argomento per l'oggetto Java?
In generale, come si può dire quali sono i tag e parametri per la configurazione della molla sono?
Per esempio, come faccio a sapere che che ShaPasswordEncoder va con "password-encoder" (se effettivamente lo fa)?
Soluzione
Si guarda il XML Schema . Ad esempio:
<xs:attribute name="hash">
<xs:annotation>
<xs:documentation>
Defines the hashing algorithm used on user passwords. We recommend
strongly against using MD4, as it is a very weak hashing algorithm.
</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:token">
<xs:enumeration value="plaintext"/>
<xs:enumeration value="sha"/>
<xs:enumeration value="sha-256"/>
<xs:enumeration value="md5"/>
<xs:enumeration value="md4"/>
<xs:enumeration value="{sha}"/>
<xs:enumeration value="{ssha}"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
Quindi, si dovrebbe fare questo:
<authentication-provider>
<password-encoder hash="sha-256" />
<jdbc-user-service data-source-ref="dataSource" />
</authentication-provider>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow