Package com.cloudinary.api.signing
Class NotificationRequestSignatureVerifier
- java.lang.Object
-
- com.cloudinary.api.signing.NotificationRequestSignatureVerifier
-
public class NotificationRequestSignatureVerifier extends java.lang.Object
TheNotificationRequestSignatureVerifier
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 ofNotificationRequestSignatureVerifier
with secret key value.NotificationRequestSignatureVerifier(java.lang.String secretKey, SignatureAlgorithm signatureAlgorithm)
Initializes new instance ofNotificationRequestSignatureVerifier
with secret key value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
verifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature)
Verifies signature of Cloudinary Upload notification.boolean
verifySignature(java.lang.String body, java.lang.String timestamp, java.lang.String signature, long secondsValidFor)
Verifies signature of Cloudinary Upload notification.
-
-
-
Constructor Detail
-
NotificationRequestSignatureVerifier
public NotificationRequestSignatureVerifier(java.lang.String secretKey)
Initializes new instance ofNotificationRequestSignatureVerifier
with 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 ofNotificationRequestSignatureVerifier
with 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 Detail
-
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
-
-