|
@@ -23,6 +23,7 @@ function open() {
|
|
|
step.value = 0
|
|
|
data.value = {
|
|
|
challenge_method: 'dns01',
|
|
|
+ key_type: '2048',
|
|
|
} as Cert
|
|
|
}
|
|
|
|
|
@@ -45,12 +46,39 @@ const issueCert = () => {
|
|
|
modalVisible.value = true
|
|
|
|
|
|
refObtainCertLive.value.issue_cert(computedDomain.value,
|
|
|
- [computedDomain.value, domain.value])
|
|
|
+ [computedDomain.value, domain.value], data.value.key_type)
|
|
|
.then(() => {
|
|
|
message.success($gettext('Renew successfully'))
|
|
|
emit('issued')
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
+const keyType = shallowRef([
|
|
|
+ {
|
|
|
+ key: '2048',
|
|
|
+ name: 'RSA2048',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: '3072',
|
|
|
+ name: 'RSA3072',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: '4096',
|
|
|
+ name: 'RSA4096',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: '8192',
|
|
|
+ name: 'RAS8192',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: 'P256',
|
|
|
+ name: 'EC256',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ key: 'P384',
|
|
|
+ name: 'EC384',
|
|
|
+ },
|
|
|
+])
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
@@ -75,6 +103,18 @@ const issueCert = () => {
|
|
|
addon-before="*."
|
|
|
/>
|
|
|
</AFormItem>
|
|
|
+
|
|
|
+ <AFormItem :label="$gettext('Key Type')">
|
|
|
+ <ASelect v-model:value="data.key_type">
|
|
|
+ <ASelectOption
|
|
|
+ v-for="t in keyType"
|
|
|
+ :key="t.key"
|
|
|
+ :value="t.key"
|
|
|
+ >
|
|
|
+ {{ t.name }}
|
|
|
+ </ASelectOption>
|
|
|
+ </ASelect>
|
|
|
+ </AFormItem>
|
|
|
</AForm>
|
|
|
<div
|
|
|
v-if="step === 0"
|