2023-01-27 03:22:44 -08:00
import type { INodeProperties } from 'n8n-workflow' ;
2022-10-07 06:08:55 -07:00
export const certificateOperations : INodeProperties [ ] = [
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
noDataExpression : true ,
displayOptions : {
show : {
resource : [ 'certificate' ] ,
} ,
} ,
options : [
{
name : 'Delete' ,
value : 'delete' ,
description : 'Delete a certificate' ,
action : 'Delete a certificate' ,
} ,
{
name : 'Get' ,
value : 'get' ,
description : 'Get a certificate' ,
action : 'Get a certificate' ,
} ,
{
name : 'Get Many' ,
value : 'getMany' ,
description : 'Get many certificates' ,
action : 'Get many certificates' ,
} ,
{
name : 'Get Metadata' ,
value : 'getMetadata' ,
description : 'Get certificate metadata' ,
action : 'Get certificate metadata' ,
} ,
{
name : 'Renew' ,
value : 'renew' ,
description : 'Renew a certificate' ,
action : 'Renew a certificate' ,
} ,
] ,
default : 'renew' ,
} ,
] ;
export const certificateFields : INodeProperties [ ] = [
/* -------------------------------------------------------------------------- */
/* certificate:renew */
/* -------------------------------------------------------------------------- */
{
displayName : 'Certificate ARN' ,
name : 'certificateArn' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [ 'certificate' ] ,
operation : [ 'renew' , 'get' , 'delete' , 'getMetadata' ] ,
} ,
} ,
description :
'String that contains the ARN of the ACM certificate to be renewed. This must be of the form: arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012.' ,
} ,
/* -------------------------------------------------------------------------- */
/* certificate:delete */
/* -------------------------------------------------------------------------- */
{
displayName : 'Bucket Name' ,
name : 'bucketName' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [ 'certificate' ] ,
operation : [ 'delete' ] ,
} ,
} ,
} ,
{
displayName : 'Certificate Key' ,
name : 'certificateKey' ,
type : 'string' ,
required : true ,
default : '' ,
displayOptions : {
show : {
resource : [ 'certificate' ] ,
operation : [ 'delete' ] ,
} ,
} ,
} ,
/* -------------------------------------------------------------------------- */
/* certificate:getMany */
/* -------------------------------------------------------------------------- */
{
displayName : 'Return All' ,
name : 'returnAll' ,
type : 'boolean' ,
displayOptions : {
show : {
operation : [ 'getMany' ] ,
resource : [ 'certificate' ] ,
} ,
} ,
default : false ,
description : 'Whether to return all results or only up to a given limit' ,
} ,
{
displayName : 'Limit' ,
name : 'limit' ,
type : 'number' ,
displayOptions : {
show : {
operation : [ 'getMany' ] ,
resource : [ 'certificate' ] ,
returnAll : [ false ] ,
} ,
} ,
typeOptions : {
minValue : 1 ,
maxValue : 500 ,
} ,
default : 100 ,
description : 'Max number of results to return' ,
} ,
{
displayName : 'Options' ,
name : 'options' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [ 'certificate' ] ,
operation : [ 'getMany' ] ,
} ,
} ,
options : [
{
displayName : 'Certificate Statuses' ,
name : 'certificateStatuses' ,
type : 'multiOptions' ,
options : [
{
name : 'Expired' ,
value : 'EXPIRED' ,
} ,
{
name : 'Failed' ,
value : 'FAILED' ,
} ,
{
name : 'Inactive' ,
value : 'INACTIVE' ,
} ,
{
name : 'Issued' ,
value : 'ISSUED' ,
} ,
{
name : 'Pending Validation' ,
value : 'PENDING_VALIDATION' ,
} ,
{
name : 'Revoked' ,
value : 'REVOKED' ,
} ,
{
name : 'Validation Timed Out' ,
value : 'VALIDATION_TIMED_OUT' ,
} ,
] ,
default : [ ] ,
description : 'Filter the certificate list by status value' ,
} ,
{
displayName : 'Extended Key Usage' ,
name : 'extendedKeyUsage' ,
type : 'multiOptions' ,
options : [
{
name : 'Any' ,
value : 'ANY' ,
} ,
{
name : 'Code Signing' ,
value : 'CODE_SIGNING' ,
} ,
{
name : 'Custom' ,
value : 'CUSTOM' ,
} ,
{
name : 'Email Protection' ,
value : 'EMAIL_PROTECTION' ,
} ,
{
name : 'IPSEC End System' ,
value : 'IPSEC_END_SYSTEM' ,
} ,
{
name : 'IPSEC Tunnel' ,
value : 'IPSEC_TUNNEL' ,
} ,
{
name : 'IPSEC User' ,
value : 'IPSEC_USER' ,
} ,
{
name : 'None' ,
value : 'NONE' ,
} ,
{
name : 'OCSP Signing' ,
value : 'OCSP_SIGNING' ,
} ,
{
name : 'Time Stamping' ,
value : 'TIME_STAMPING' ,
} ,
{
name : 'TLS Web Client Authentication' ,
value : 'TLS_WEB_CLIENT_AUTHENTICATION' ,
} ,
{
name : 'TLS Web Server Authentication' ,
value : 'TLS_WEB_SERVER_AUTHENTICATION' ,
} ,
] ,
default : [ ] ,
description : 'Specify one or more ExtendedKeyUsage extension values' ,
} ,
{
displayName : 'Key Types' ,
name : 'keyTypes' ,
type : 'multiOptions' ,
options : [
{
name : 'EC Prime256v1' ,
value : 'EC_prime256v1' ,
} ,
{
name : 'EC Secp384r1' ,
value : 'EC_secp384r1' ,
} ,
{
name : 'EC Secp521r1' ,
value : 'EC_secp521r1' ,
} ,
{
name : 'RSA 1024' ,
value : 'RSA_1024' ,
} ,
{
name : 'RSA 2048' ,
value : 'RSA_2048' ,
} ,
{
name : 'RSA 4096' ,
value : 'RSA_4096' ,
} ,
] ,
default : [ 'RSA_2048' ] ,
description : 'Specify one or more algorithms that can be used to generate key pairs' ,
} ,
{
displayName : 'Key Usage' ,
name : 'keyUsage' ,
type : 'multiOptions' ,
options : [
{
name : 'Any' ,
value : 'ANY' ,
} ,
{
name : 'Certificate Signing' ,
value : 'CERTIFICATE_SIGNING' ,
} ,
{
name : 'CRL Signing' ,
value : 'CRL_SIGNING' ,
} ,
{
name : 'Custom' ,
value : 'CUSTOM' ,
} ,
{
name : 'Data Encipherment' ,
value : 'DATA_ENCIPHERMENT' ,
} ,
{
name : 'Decipher Only' ,
value : 'DECIPHER_ONLY' ,
} ,
{
name : 'Digital Signature' ,
value : 'DIGITAL_SIGNATURE' ,
} ,
{
name : 'Encipher Only' ,
value : 'ENCIPHER_ONLY' ,
} ,
{
name : 'Key Agreement' ,
value : 'KEY_AGREEMENT' ,
} ,
{
name : 'Key Encipherment' ,
value : 'KEY_ENCIPHERMENT' ,
} ,
{
name : 'Non Repudiation' ,
value : 'NON_REPUDIATION' ,
} ,
] ,
default : [ ] ,
description : 'Specify one or more KeyUsage extension values' ,
} ,
] ,
} ,
] ;