Cet article explique comment corriger l'erreur SSLPri.MissingParameter qui survient lorsque vous ajoutez un certificat HTTPS en créant un nom de domaine accéléré par CDN avec Terraform.
Message d'erreur
Terraform renvoie l'erreur suivante :
│ Error: [ERROR] terraform-provider-alicloud/alicloud/resource_alicloud_cdn_domain_new.go:576: Resource public1.sige-test3.com SetCdnDomainSSLCertificate Failed!!! [SDK alibaba-cloud-sdk-go ERROR]:
│ SDKError:
│ StatusCode: 400
│ Code: SSLPri.MissingParameter
│ Message: code: 400, The SSLPri parameter is required. request id: F5512B73-4FCE-56DD-8F05-19BA81C701F1
│ Data: {"Code":"SSLPri.MissingParameter","HostId":"cdn.aliyuncs.com","Message":"The SSLPri parameter is required.","Recommend":"https://api.alibabacloud.com/troubleshoot?intl_lang=EN_US&q=SSLPri.MissingParameter&product=Cdn&requestId=F5512B73-4FCE-56DD-8F05-19BA81C701F1","RequestId":"F5512B73-4FCE-56DD-8F05-19BA81C701F1"}
│
│ with alicloud_cdn_domain_new.default,
│ on main.tf line 1, in resource "alicloud_cdn_domain_new" "default":
│ 1: resource "alicloud_cdn_domain_new" "default"
Cause
Lorsque vous utilisez alicloud_cdn_domain_new avec cert_type défini sur cas (Alibaba Cloud Certificate Center), le paramètre cert_region doit correspondre au type de votre compte :
| Type de compte | **Valeur requise pour cert_region** |
Notes |
|---|---|---|
| Site international | ap-southeast-1 |
Vous devez définir ce paramètre explicitement. Son omission provoque l'erreur SSLPri.MissingParameter. |
| Site Chine | cn-hangzhou |
Il s'agit de la valeur par défaut. Aucun paramétrage explicite n'est nécessaire. |
Pour consulter la référence complète des paramètres, voir alicloud_cdn_domain_new.

Solution
Dans votre ressource alicloud_cdn_domain_new, définissez cert_type sur cas et ajoutez le paramètre cert_region au bloc certificate_config avec la valeur correspondant à votre type de compte.
L'exemple suivant présente une configuration complète pour un compte du site international :
# Add an accelerated domain name.
resource "alicloud_cdn_domain_new" "domain" {
domain_name = "mycdndomain.alicloud-provider.cn"
cdn_type = "download"
scope = "overseas"
sources {
content = "myoss.oss-rg-china-mainland.aliyuncs.com"
type = "oss"
priority = "20"
port = 80
weight = "15"
}
# Configure a certificate.
# cert_id: To obtain a certificate ID, purchase or upload a certificate in Alibaba Cloud Certificate Center first.
# cert_type="cas" uses a certificate from Alibaba Cloud Certificate Center.
# cert_region="ap-southeast-1" targets Alibaba Cloud Certificate Center for the international site.
# International site accounts must set cert_region explicitly. China site accounts can omit this parameter.
certificate_config {
cert_id = "1111111"
cert_name = "cert-2987438279834"
cert_type = "cas"
cert_region = "ap-southeast-1"
}
}