/** * Create a {@code ConsumerAndSecret} where the consumer will use RSA-SHA1 to sign requests. * * @param serviceName the name of the service the consumer is used with * @param consumer Consumer information * @param privateKey private RSA key to use when signing requests */ public ConsumerAndSecret(String serviceName, Consumer consumer, PrivateKey privateKey) { if (consumer.getSignatureMethod() == SignatureMethod.HMAC_SHA1) { throw new IllegalArgumentException("consumer uses HMAC is being configured with an RSA private key"); } this.serviceName = checkNotNull(serviceName, "serviceName"); this.consumer = checkNotNull(consumer, "consumer"); this.privateKey = checkNotNull(privateKey, "privateKey"); this.sharedSecret = null; }
/** * Create a {@code ConsumerAndSecret} where the consumer will use HMAC-SHA1 to sign requests. * * @param serviceName the name of the service the consumer is used with * @param consumer Consumer information * @param sharedSecret shared secret between the consumer and service provider that is used to sign requests */ public ConsumerAndSecret(String serviceName, Consumer consumer, String sharedSecret) { if (consumer.getSignatureMethod() == SignatureMethod.RSA_SHA1) { throw new IllegalArgumentException("consumer uses RSA is being configured with a shared secret"); } this.serviceName = checkNotNull(serviceName, "serviceName"); this.consumer = checkNotNull(consumer, "consumer"); this.sharedSecret = checkNotNull(sharedSecret, "sharedSecret"); this.privateKey = null; }
private OAuthAccessor asOAuthAccessor(ConsumerToken token, ConsumerAndSecret cas, ServiceProvider serviceProvider) { if (cas.getConsumer().getSignatureMethod() == SignatureMethod.RSA_SHA1) { return ConsumerTokens.asOAuthAccessor(token, cas.getPrivateKey(), serviceProvider); } else { return ConsumerTokens.asOAuthAccessor(token, cas.getSharedSecret(), serviceProvider); } }
private OAuthConsumer asOAuthConsumer(ConsumerAndSecret cas, ServiceProvider serviceProvider) { if (cas.getConsumer().getSignatureMethod() == SignatureMethod.RSA_SHA1) { return Consumers.asOAuthConsumer(cas.getConsumer(), cas.getPrivateKey(), serviceProvider); } else { return Consumers.asOAuthConsumer(cas.getConsumer(), cas.getSharedSecret(), serviceProvider); } }
.description(consumer.getDescription()) .publicKey(consumer.getPublicKey()) .signatureMethod(consumer.getSignatureMethod()) .callback(consumer.getCallback()) .twoLOAllowed(twoLoEnabled)
/** * Converts a {@code Consumer} to an {@code OAuthConsumer}, uses the {@code sharedSecret} in the * {@code OAuthConsumer}s constructor so that it is suitable for signing. * * @param consumer {@code Consumer} to be converted to an {@code OAuthConsumer} * @param sharedSecret shared secret to use to sign requests * @param oauthServiceProvider {@code OAuthServiceProvider} to set as the {@link OAuthConsumer#serviceProvider} attribute * @return {@code OAuthConsumer} converted from the {@code Consumer} */ public static OAuthConsumer asOAuthConsumer(Consumer consumer, String sharedSecret, OAuthServiceProvider oauthServiceProvider) { checkNotNull(consumer, "consumer"); checkNotNull(oauthServiceProvider, "oauthServiceProvider"); String callback = consumer.getCallback() != null ? consumer.getCallback().toString() : null; OAuthConsumer oauthConsumer = new OAuthConsumer(callback, consumer.getKey(), sharedSecret, oauthServiceProvider); oauthConsumer.setProperty(ConsumerProperty.NAME, consumer.getName()); oauthConsumer.setProperty(ConsumerProperty.DESCRIPTION, consumer.getDescription()); if (consumer.getSignatureMethod() == SignatureMethod.RSA_SHA1) { oauthConsumer.setProperty(OAuth.OAUTH_SIGNATURE_METHOD, OAuth.RSA_SHA1); oauthConsumer.setProperty(RSA_SHA1.PUBLIC_KEY, consumer.getPublicKey()); } else { oauthConsumer.setProperty(OAuth.OAUTH_SIGNATURE_METHOD, OAuth.HMAC_SHA1); } return oauthConsumer; }
@Nonnull public ConsumerEntity build() { String publicKey; if (consumer.getPublicKey() != null) { publicKey = RSAKeys.toPemEncoding(consumer.getPublicKey()); } else { publicKey = null; } return new ConsumerEntity(self, consumer.getKey(), consumer.getName(), consumer.getDescription(), consumer.getSignatureMethod().name(), publicKey, consumer.getCallback(), consumer.getTwoLOAllowed(), consumer.getExecutingTwoLOUser(), consumer.getTwoLOImpersonationAllowed() ); } }
public static Consumer.InstanceBuilder consumerBuilder(@Nonnull Consumer consumer) { checkNotNull(consumer, "consumer"); Consumer.InstanceBuilder builder = new Consumer.InstanceBuilder(consumer.getKey()) .name(consumer.getName()) .description(consumer.getDescription()) .signatureMethod(consumer.getSignatureMethod()) .callback(consumer.getCallback()) .twoLOAllowed(consumer.getTwoLOAllowed()) .executingTwoLOUser(consumer.getExecutingTwoLOUser()) .twoLOImpersonationAllowed(consumer.getTwoLOImpersonationAllowed()); if (consumer.getPublicKey() != null) { builder.publicKey(consumer.getPublicKey()); } return builder; } }
public Consumer updateHostConsumerInformation(String name, String description, URI callback) { ConsumerAndSecret cas = hostCasProvider.get(); Consumer oldConsumer = cas.getConsumer(); Consumer newConsumer = Consumer.key(oldConsumer.getKey()) .signatureMethod(oldConsumer.getSignatureMethod()) .publicKey(oldConsumer.getPublicKey()) .name(name) .description(description) .callback(callback) .build(); if (newConsumer.getSignatureMethod() == SignatureMethod.HMAC_SHA1) { cas = new ConsumerAndSecret(cas.getServiceName(), newConsumer, cas.getSharedSecret()); } else { cas = new ConsumerAndSecret(cas.getServiceName(), newConsumer, cas.getPrivateKey()); } return hostCasProvider.put(cas).getConsumer(); }
public RestConsumer(@Nonnull Consumer consumer) { checkNotNull(consumer, "consumer"); put(KEY, consumer.getKey()); put(NAME, consumer.getName()); putIfNotNull(DESCRIPTION, consumer.getDescription()); put(SIGNATURE_METHOD, consumer.getSignatureMethod().name()); if (consumer.getPublicKey() != null) { put(PUBLIC_KEY, RSAKeys.toPemEncoding(consumer.getPublicKey())); } putAsString(CALLBACK, consumer.getCallback()); put(TWO_LO_ALLOWED, consumer.getTwoLOAllowed()); putIfNotNull(EXECUTING_TWO_LO_USER, consumer.getExecutingTwoLOUser()); put(TWO_LO_IMPERSONATION_ALLOWED, consumer.getTwoLOImpersonationAllowed()); }
.description(consumer.getDescription()) .publicKey(consumer.getPublicKey()) .signatureMethod(consumer.getSignatureMethod()) .callback(consumer.getCallback()) .twoLOAllowed(consumerEntity.isTwoLOAllowed()) .description(consumer.getDescription()) .publicKey(consumer.getPublicKey()) .signatureMethod(consumer.getSignatureMethod()) .callback(consumer.getCallback()) .twoLOAllowed(consumerEntity.isTwoLOAllowed())