Java SDK 17.4.0
2026年8月25日リリース
新機能
KSM-531: HTTP/HTTPSプロキシのサポートを追加。SDKのすべての接続 (シークレットの取得、ファイルのアップロード、ファイルのダウンロード) をプロキシ経由で行えるようになりました。
SecretsManagerOptionsに新しいproxyUrlオプションを追加。Java利用者向けにSecretsManagerOptions.withProxy(storage, proxyUrl)も追加。優先順位: 明示的な
proxyUrl→https.proxyHost/https.proxyPort→HTTPS_PROXY/https_proxy。NO_PROXYおよびhttp.nonProxyHostsの除外設定も反映されます。KSMの通信はすべてHTTPSのため、HTTP_PROXYは無視されます。認証付きプロキシは
http://user:pass@host:port形式を使用します。407エラー発生時は、型付きのSecretsManagerExceptionが送出され、他のHTTP/HTTPS呼び出しを行う前に設定が必要なjdk.http.auth.tunneling.disabledSchemesJVMフラグの名前が示されます。オプション指定形式の新しいオーバーロード
downloadFile(options, file)およびdownloadThumbnail(options, file)は、proxyUrl、allowUnverifiedCertificate、および設定済みのタイムアウトを反映します。引数1つの従来形式は変更ありません。
KSM-1176:
KeeperRecordにisEditableを追加。サーバー応答のエンベロープから転送される値で、updateSecretの呼び出し前に書き込み権限を確認できます。
セキュリティ
KSM-1203:
generatePasswordの最終文字のシャッフルで、暗号学的な乱数源ではなくKotlinのRandom.Defaultを使用していた不具合を修正。SecureRandomを使用するようになりました。KSM-1207:
HttpsURLConnectionの呼び出し (クエリ、アップロード、ダウンロード) にタイムアウトが設定されておらず、無期限にハングする可能性があった不具合を修正。SecretsManagerOptionsにconnectTimeoutMillis(デフォルト5秒) およびreadTimeoutMillis(デフォルト30秒) を追加。KSM-1248: サーバーから提供されるキーIDを、保存前に組み込みの公開鍵テーブルと照合して検証するようになりました。認識できないIDは、保存済みの鍵状態を上書きせずに拒否されます。キーローテーションの再試行回数は最大3回に制限されます。
KSM-1262: 構成ファイルおよびキャッシュファイルの書き込みを、アトミックな一時ファイル置き換え方式に変更し、データ書き込み前に0600権限を設定するようにしました。これにより、書き込み中に他のローカルユーザーがファイルを読み取れる可能性があった問題を解消しました。
バグ修正
KSM-1081: レスポンス内のいずれかのフォルダのキーが破損または欠落している場合に
getFolders()がクラッシュしていた不具合を修正。復号できないフォルダはスキップされ、残りのフォルダは正常に返されるようになりました。KSM-1086:
deleteFolder()が誤ったレスポンス型を返していた不具合を修正。deleteSecret()と同様に、フォルダ単位のステータスを含むSecretsManagerDeleteFolderResponseを返すようになりました。両方の呼び出しで、アイテム単位のサーバー側の失敗が呼び出し元に伝わるようになりました。KSM-1270: サーバーのフォルダデータに親の循環参照が含まれる場合に
getSharedFolderKey()が無限ループしていた不具合を修正。該当するフォルダはスキップされるようになりました。
互換性に影響する変更
deleteFolder()の戻り値の型。SecretsManagerDeleteResponseの代わりにSecretsManagerDeleteFolderResponseを返すようになりました。.recordsを参照していた呼び出し元は、新しい型の.foldersリストへ切り替える必要があります。実際には、既存の動作しているコードへの影響はありません。旧型はバックエンドが送信しないrecordsフィールドを必須としていたため、以前はすべての呼び出しで値を返さずMissingFieldExceptionが送出されていました。コンストラクタの拡張 (バイトコードレベルのみ)。
KeeperRecordおよびSecretsManagerOptionsにコンストラクタパラメータが追加されました。Javaの呼び出し元は@JvmOverloadsにより17.3.0の全コンストラクタ形式を引き続き利用できますが、17.3.0向けにコンパイルされたKotlinコードは、再コンパイルせずに17.4.0のjarに入れ替えるとNoSuchMethodErrorが発生します。jarをそのまま置き換えるのではなく、依存先を再ビルドしてください。
リソース
最終更新

