Package com.cloudinary.api.signing
Class NotificationRequestSignatureVerifier
java.lang.Object
com.cloudinary.api.signing.NotificationRequestSignatureVerifier
public class NotificationRequestSignatureVerifier
extends java.lang.Object
The
NotificationRequestSignatureVerifier class is responsible for verifying authenticity and integrity
of Cloudinary Upload notifications.-
Constructor Summary
Constructors Constructor Description NotificationRequestSignatureVerifier(java.lang.String secretKey)Initializes new instance ofNotificationRequestSignatureVerifierwith secret key value.NotificationRequestSignatureVerifier(java.lang.String secretKey, SignatureAlgorithm signatureAlgorithm)Initializes new instance ofNotificationRequestSignatureVerifierwith secret key value. -
Method Summary
Modifier and Type Method Description booleanverifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature)Verifies signature of Cloudinary Upload notification.booleanverifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature, long secondsValidFor)Verifies signature of Cloudinary Upload notification.
-
Constructor Details
-
NotificationRequestSignatureVerifier
public NotificationRequestSignatureVerifier(java.lang.String secretKey)Initializes new instance ofNotificationRequestSignatureVerifierwith secret key value.- Parameters:
secretKey- shared secret key string which is used to sign and verify authenticity of notifications
-
NotificationRequestSignatureVerifier
public NotificationRequestSignatureVerifier(java.lang.String secretKey, SignatureAlgorithm signatureAlgorithm)Initializes new instance ofNotificationRequestSignatureVerifierwith secret key value.- Parameters:
secretKey- shared secret key string which is used to sign and verify authenticity of notificationssignatureAlgorithm- type of hashing algorithm to use for calculation of HMACs
-
-
Method Details
-
verifySignature
public boolean verifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature)Verifies signature of Cloudinary Upload notification.- Parameters:
body- notification message body, represented as stringtimestamp- value of X-Cld-Timestamp custom HTTP header of notification message, representing notification issue timestampsignature- actual signature value, usually passed via X-Cld-Signature custom HTTP header of notification message- Returns:
- true if notification passed verification procedure
-
verifySignature
public boolean verifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature, long secondsValidFor)Verifies signature of Cloudinary Upload notification.Differs from
verifySignature(String, String, String)in additional validation which consists of making sure the notification being verified is still not expired based on timestamp parameter value.- Parameters:
body- notification message body, represented as stringtimestamp- value of X-Cld-Timestamp custom HTTP header of notification message, representing notification issue timestamp in secondssignature- actual signature value, usually passed via X-Cld-Signature custom HTTP header of notification messagesecondsValidFor- the amount of time, in seconds, the notification message is considered valid by client- Returns:
- true if notification passed verification procedure
-