ホームページ  >  記事  >  Java  >  Spring JSONView で機密データの JSON シリアル化と逆シリアル化を制御するにはどうすればよいですか?

Spring JSONView で機密データの JSON シリアル化と逆シリアル化を制御するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-19 18:56:02581ブラウズ

How Can I Control JSON Serialization and Deserialization of Sensitive Data in Spring JSONView?

@JsonIgnore による JSON シリアル化と逆シリアル化の制御

Spring JSONView アプリケーションでは、プロパティのシリアル化と逆シリアル化の方法をカスタマイズするのが難しい場合があります。一般的なシナリオは、シリアル化中にハッシュ化されたパスワードなどの機密データを除外しながら、逆シリアル化できるようにしたい場合です。

これを実現するには、パスワード プロパティに @JsonIgnore アノテーションを使用します。ただし、これによりプロパティの逆シリアル化が妨げられる可能性もあり、既存のパスワードを持たないユーザーのサインアップが困難になります。

解決策は、使用されている Jackson のバージョンによって異なります。 1.9 より前では、@JsonIgnore はゲッター メソッドでのみ使用できました。新しいバージョンでは、次のアノテーションを追加します:

@JsonProperty(access = JsonProperty.Access.WRITE_ONLY): セッター メソッドのこのアノテーションはシリアル化を許可しますが、逆シリアル化をブロックします。

または、 @JsonProperty の READ_ONLY アクセス タイプ引数を使用することもできます。

@JsonProperty(access = JsonProperty.Access.READ_ONLY)
private String password;

これらのアノテーションにより、パスワード プロパティは JSON 変換中にのみシリアル化されますが、オブジェクトの作成中には逆シリアル化できることが保証されます。

これらの手法に従うことで、JSON を選択的に制御できます。機密プロパティのシリアル化と逆シリアル化により、Web アプリケーションに柔軟性とセキュリティを提供します。

以上がSpring JSONView で機密データの JSON シリアル化と逆シリアル化を制御するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。