blob: 26fc44caf5220fcdfbb96c497eb61cbedef65a31 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.camel.dataformat.xmlsecurity.springboot;
import javax.annotation.Generated;
import org.apache.camel.spring.boot.DataFormatConfigurationPropertiesCommon;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
* Encrypt and decrypt XML payloads using Apache Santuario.
*
* Generated by camel-package-maven-plugin - do not edit this file!
*/
@Generated("org.apache.camel.springboot.maven.SpringBootAutoConfigurationMojo")
@ConfigurationProperties(prefix = "camel.dataformat.securexml")
public class XMLSecurityDataFormatConfiguration
extends
DataFormatConfigurationPropertiesCommon {
/**
* Whether to enable auto configuration of the secureXML data format. This
* is enabled by default.
*/
private Boolean enabled;
/**
* The cipher algorithm to be used for encryption/decryption of the XML
* message content. The available choices are: XMLCipher.TRIPLEDES
* XMLCipher.AES_128 XMLCipher.AES_128_GCM XMLCipher.AES_192
* XMLCipher.AES_192_GCM XMLCipher.AES_256 XMLCipher.AES_256_GCM
* XMLCipher.SEED_128 XMLCipher.CAMELLIA_128 XMLCipher.CAMELLIA_192
* XMLCipher.CAMELLIA_256 The default value is XMLCipher.AES_256_GCM
*/
private String xmlCipherAlgorithm = "AES-256-GCM";
/**
* A String used as passPhrase to encrypt/decrypt content. The passPhrase
* has to be provided. The passPhrase needs to be put together in
* conjunction with the appropriate encryption algorithm. For example using
* TRIPLEDES the passPhase can be a Only another 24 Byte key
*/
private String passPhrase;
/**
* A byte used as passPhrase to encrypt/decrypt content. The passPhrase has
* to be provided. The passPhrase needs to be put together in conjunction
* with the appropriate encryption algorithm. For example using TRIPLEDES
* the passPhase can be a Only another 24 Byte key
*/
private byte[] passPhraseByte;
/**
* The XPath reference to the XML Element selected for
* encryption/decryption. If no tag is specified, the entire payload is
* encrypted/decrypted.
*/
private String secureTag;
/**
* A boolean value to specify whether the XML Element is to be encrypted or
* the contents of the XML Element false = Element Level true = Element
* Content Level
*/
private Boolean secureTagContents = false;
/**
* The cipher algorithm to be used for encryption/decryption of the
* asymmetric key. The available choices are: XMLCipher.RSA_v1dot5
* XMLCipher.RSA_OAEP XMLCipher.RSA_OAEP_11 The default value is
* XMLCipher.RSA_OAEP
*/
private String keyCipherAlgorithm = "RSA_OAEP";
/**
* The key alias to be used when retrieving the recipient's public or
* private key from a KeyStore when performing asymmetric key encryption or
* decryption.
*/
private String recipientKeyAlias;
/**
* Refers to a KeyStore instance to lookup in the registry, which is used
* for configuration options for creating and loading a KeyStore instance
* that represents the sender's trustStore or recipient's keyStore.
*/
private String keyOrTrustStoreParametersRef;
/**
* The password to be used for retrieving the private key from the KeyStore.
* This key is used for asymmetric decryption.
*/
private String keyPassword;
/**
* The digest algorithm to use with the RSA OAEP algorithm. The available
* choices are: XMLCipher.SHA1 XMLCipher.SHA256 XMLCipher.SHA512 The default
* value is XMLCipher.SHA1
*/
private String digestAlgorithm = "SHA1";
/**
* The MGF Algorithm to use with the RSA OAEP algorithm. The available
* choices are: EncryptionConstants.MGF1_SHA1
* EncryptionConstants.MGF1_SHA256 EncryptionConstants.MGF1_SHA512 The
* default value is EncryptionConstants.MGF1_SHA1
*/
private String mgfAlgorithm = "MGF1_SHA1";
/**
* Whether to add the public key used to encrypt the session key as a
* KeyValue in the EncryptedKey structure or not.
*/
private Boolean addKeyValueForEncryptedKey = true;
public String getXmlCipherAlgorithm() {
return xmlCipherAlgorithm;
}
public void setXmlCipherAlgorithm(String xmlCipherAlgorithm) {
this.xmlCipherAlgorithm = xmlCipherAlgorithm;
}
public String getPassPhrase() {
return passPhrase;
}
public void setPassPhrase(String passPhrase) {
this.passPhrase = passPhrase;
}
public byte[] getPassPhraseByte() {
return passPhraseByte;
}
public void setPassPhraseByte(byte[] passPhraseByte) {
this.passPhraseByte = passPhraseByte;
}
public String getSecureTag() {
return secureTag;
}
public void setSecureTag(String secureTag) {
this.secureTag = secureTag;
}
public Boolean getSecureTagContents() {
return secureTagContents;
}
public void setSecureTagContents(Boolean secureTagContents) {
this.secureTagContents = secureTagContents;
}
public String getKeyCipherAlgorithm() {
return keyCipherAlgorithm;
}
public void setKeyCipherAlgorithm(String keyCipherAlgorithm) {
this.keyCipherAlgorithm = keyCipherAlgorithm;
}
public String getRecipientKeyAlias() {
return recipientKeyAlias;
}
public void setRecipientKeyAlias(String recipientKeyAlias) {
this.recipientKeyAlias = recipientKeyAlias;
}
public String getKeyOrTrustStoreParametersRef() {
return keyOrTrustStoreParametersRef;
}
public void setKeyOrTrustStoreParametersRef(
String keyOrTrustStoreParametersRef) {
this.keyOrTrustStoreParametersRef = keyOrTrustStoreParametersRef;
}
public String getKeyPassword() {
return keyPassword;
}
public void setKeyPassword(String keyPassword) {
this.keyPassword = keyPassword;
}
public String getDigestAlgorithm() {
return digestAlgorithm;
}
public void setDigestAlgorithm(String digestAlgorithm) {
this.digestAlgorithm = digestAlgorithm;
}
public String getMgfAlgorithm() {
return mgfAlgorithm;
}
public void setMgfAlgorithm(String mgfAlgorithm) {
this.mgfAlgorithm = mgfAlgorithm;
}
public Boolean getAddKeyValueForEncryptedKey() {
return addKeyValueForEncryptedKey;
}
public void setAddKeyValueForEncryptedKey(Boolean addKeyValueForEncryptedKey) {
this.addKeyValueForEncryptedKey = addKeyValueForEncryptedKey;
}
}