Add certificate update cases to Cert Service CSITs
[integration/csit.git] / plans / oom-platform-cert-service / certservice / resources / ejbca-configuration.sh
1 #!/bin/bash
2
3 configureEjbca() {
4     ejbca.sh ca init \
5       --caname ManagementCA \
6       --dn "O=EJBCA Container Quickstart,CN=ManagementCA,UID=12345" \
7       --tokenType soft \
8       --keyspec 3072 \
9       --keytype RSA \
10       -v 3652 \
11       --policy null \
12       -s SHA256WithRSA \
13       -type "x509"
14     ejbca.sh config cmp addalias --alias cmpRA
15     ejbca.sh config cmp updatealias --alias cmpRA --key operationmode --value ra
16     ejbca.sh ca editca --caname ManagementCA --field cmpRaAuthSecret --value mypassword
17     ejbca.sh config cmp updatealias --alias cmpRA --key responseprotection --value signature
18     ejbca.sh config cmp updatealias --alias cmpRA --key authenticationmodule --value 'HMAC;EndEntityCertificate'
19     ejbca.sh config cmp updatealias --alias cmpRA --key authenticationparameters --value '-;ManagementCA'
20     ejbca.sh config cmp updatealias --alias cmpRA --key allowautomatickeyupdate --value true
21     ejbca.sh ca importprofiles -d /opt/primekey/custom_profiles
22     #Profile name taken from certprofile filename (certprofile_<profile-name>-<id>.xml)
23     ejbca.sh config cmp updatealias --alias cmpRA --key ra.certificateprofile --value CUSTOM_ENDUSER
24     #ID taken from entityprofile filename (entityprofile_<profile-name>-<id>.xml)
25     ejbca.sh config cmp updatealias --alias cmpRA --key ra.endentityprofileid --value 1356531849
26     caSubject=$(ejbca.sh ca getcacert --caname ManagementCA -f /dev/stdout | grep 'Subject' | sed -e "s/^Subject: //" | sed -n '1p')
27     ejbca.sh config cmp updatealias --alias cmpRA --key defaultca --value "$caSubject"
28     ejbca.sh config cmp dumpalias --alias cmpRA
29     ejbca.sh config cmp addalias --alias cmp
30     ejbca.sh config cmp updatealias --alias cmp --key allowautomatickeyupdate --value true
31     ejbca.sh config cmp updatealias --alias cmp --key responseprotection --value pbe
32     ejbca.sh ra addendentity --username Node123 --dn "CN=Node123" --caname ManagementCA --password mypassword --type 1 --token USERGENERATED
33     ejbca.sh ra setclearpwd --username Node123 --password mypassword
34     ejbca.sh config cmp updatealias --alias cmp --key extractusernamecomponent --value CN
35     ejbca.sh config cmp dumpalias --alias cmp
36     ejbca.sh ca getcacert --caname ManagementCA -f /dev/stdout > cacert.pem
37     #Add "Certificate Update Admin" role to allow performing KUR/CR for certs within specific organization (e.g. Linux-Foundation)
38     ejbca.sh roles addrole "Certificate Update Admin"
39     ejbca.sh roles changerule "Certificate Update Admin" /ca/ManagementCA/ ACCEPT
40     ejbca.sh roles changerule "Certificate Update Admin" /ca_functionality/create_certificate/ ACCEPT
41     ejbca.sh roles changerule "Certificate Update Admin" /endentityprofilesrules/Custom_EndEntity/ ACCEPT
42     ejbca.sh roles changerule "Certificate Update Admin" /ra_functionality/edit_end_entity/ ACCEPT
43     ejbca.sh roles addrolemember "Certificate Update Admin" ManagementCA WITH_ORGANIZATION --value "Linux-Foundation"
44 }
45
46 configureEjbca