Files
pyGoEdge-UserPanel/reference/goedge 文档/SSLCertService.md
2025-11-18 03:36:49 +08:00

10 KiB
Raw Blame History

SSLCertService

SSL证书管理服务


countAllSSLCertsWithOCSPError

计算有OCSP错误的证书数量

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/countAllSSLCertsWithOCSPError
  • RPCrpc countAllSSLCertsWithOCSPError (CountAllSSLCertsWithOCSPErrorRequest) returns (RPCCountResponse);

请求对象 (CountAllSSLCertsWithOCSPErrorRequest)

{
  "keyword": "string // 关键词"
}

响应对象 (RPCCountResponse)

{
  "count": "int64 // 数量"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/countAllSSLCertsWithOCSPError" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

countSSLCerts

计算匹配的证书数量

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/countSSLCerts
  • RPCrpc countSSLCerts (CountSSLCertRequest) returns (RPCCountResponse);

请求对象 (CountSSLCertRequest)

{
  "isCA": "bool // 可选项是否为CA证书",
  "isAvailable": "bool // 可选项,是否可用(在有效期内)",
  "isExpired": "bool // 可选项,是否已过期",
  "expiringDays": "int32 // 可选项,离过期日的天数",
  "keyword": "string // 可选项,关键词",
  "userId": "int64 // 可选项用户ID不填则表示读取管理员上传的证书",
  "domains": "[]string // 可选项,搜索使用的域名列表",
  "userOnly": "bool // 可选项,只列出用户上传的证书"
}

响应对象 (RPCCountResponse)

{
  "count": "int64 // 数量"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/countSSLCerts" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

createSSLCert

创建证书

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/createSSLCert
  • RPCrpc createSSLCert (CreateSSLCertRequest) returns (CreateSSLCertResponse);

请求对象 (CreateSSLCertRequest)

{
  "isOn": "bool // 是否启用",
  "userId": "int64 // 所属用户,仅管理员才能指定",
  "name": "string // 名称",
  "description": "string // 描述(备注)",
  "serverName": "string",
  "isCA": "bool",
  "certData": "bytes",
  "keyData": "bytes",
  "timeBeginAt": "int64",
  "timeEndAt": "int64",
  "dnsNames": "[]string",
  "commonNames": "[]string"
}

响应对象 (CreateSSLCertResponse)

{
  "sslCertId": "int64"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/createSSLCert" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

createSSLCerts

创建一组证书

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/createSSLCerts
  • RPCrpc createSSLCerts(CreateSSLCertsRequest) returns (CreateSSLCertsResponse);

请求对象 (CreateSSLCertsRequest)

{
  "SSLCerts": "[]cert // 证书信息",
  "userId": "int64 // 用户ID",
  "isOn": "bool // 是否启用",
  "name": "string // 名称",
  "description": "string // 描述(备注)",
  "serverName": "string",
  "isCA": "bool",
  "certData": "bytes",
  "keyData": "bytes",
  "timeBeginAt": "int64",
  "timeEndAt": "int64",
  "dnsNames": "[]string",
  "commonNames": "[]string"
}

响应对象 (CreateSSLCertsResponse)

{
  "sslCertIds": "[]int64"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/createSSLCerts" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

deleteSSLCert

删除证书

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/deleteSSLCert
  • RPCrpc deleteSSLCert (DeleteSSLCertRequest) returns (RPCSuccess);

请求对象 (DeleteSSLCertRequest)

{
  "sslCertId": "int64"
}

响应对象 (RPCSuccess)

{}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/deleteSSLCert" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

findEnabledSSLCertConfig

查找证书配置

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/findEnabledSSLCertConfig
  • RPCrpc findEnabledSSLCertConfig (FindEnabledSSLCertConfigRequest) returns (FindEnabledSSLCertConfigResponse);

请求对象 (FindEnabledSSLCertConfigRequest)

{
  "sslCertId": "int64"
}

响应对象 (FindEnabledSSLCertConfigResponse)

{
  "sslCertJSON": "bytes"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/findEnabledSSLCertConfig" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

findSSLCertUser

查找证书所属用户

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/findSSLCertUser
  • RPCrpc findSSLCertUser(FindSSLCertUserRequest) returns (FindSSLCertUserResponse);

请求对象 (FindSSLCertUserRequest)

{
  "sslCertId": "int64 // 证书ID"
}

响应对象 (FindSSLCertUserResponse)

{
  "user": "User // 用户信息,只包含几个基本的信息"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/findSSLCertUser" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

ignoreSSLCertsWithOCSPError

忽略一组OCSP证书错误

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/ignoreSSLCertsWithOCSPError
  • RPCrpc ignoreSSLCertsWithOCSPError (IgnoreSSLCertsWithOCSPErrorRequest) returns (RPCSuccess);

请求对象 (IgnoreSSLCertsWithOCSPErrorRequest)

{
  "sslCertIds": "[]int64"
}

响应对象 (RPCSuccess)

{}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/ignoreSSLCertsWithOCSPError" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

listSSLCerts

列出单页匹配的证书

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/listSSLCerts
  • RPCrpc listSSLCerts (ListSSLCertsRequest) returns (ListSSLCertsResponse);

请求对象 (ListSSLCertsRequest)

{
  "isCA": "bool // 可选项是否为CA证书",
  "isAvailable": "bool // 可选项,是否可用(在有效期内)",
  "isExpired": "bool // 可选项, 是否已过期",
  "expiringDays": "int32 // 可选项,离过期日的天数",
  "keyword": "string // 可选项,关键词",
  "userId": "int64 // 可选项用户ID不填则表示读取管理员上传的证书",
  "domains": "[]string // 可选项,搜索使用的域名列表",
  "offset": "int64 // 读取位置",
  "size": "int64 // 读取长度不能小于0",
  "userOnly": "bool // 可选项,只列出用户上传的证书"
}

响应对象 (ListSSLCertsResponse)

{
  "sslCertsJSON": "bytes"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/listSSLCerts" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

listSSLCertsWithOCSPError

列出有OCSP错误的证书

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/listSSLCertsWithOCSPError
  • RPCrpc listSSLCertsWithOCSPError (ListSSLCertsWithOCSPErrorRequest) returns (ListSSLCertsWithOCSPErrorResponse);

请求对象 (ListSSLCertsWithOCSPErrorRequest)

{
  "keyword": "string // 关键词",
  "offset": "int64 // 读取位置",
  "size": "int64 // 数量通常不能小于0"
}

响应对象 (ListSSLCertsWithOCSPErrorResponse)

{
  "sslCerts": "[]SSLCert"
}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/listSSLCertsWithOCSPError" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

resetAllSSLCertsWithOCSPError

重置所有证书OCSP错误状态

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/resetAllSSLCertsWithOCSPError
  • RPCrpc resetAllSSLCertsWithOCSPError (ResetAllSSLCertsWithOCSPErrorRequest) returns (RPCSuccess);

请求对象 (ResetAllSSLCertsWithOCSPErrorRequest)

{}

响应对象 (RPCSuccess)

{}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/resetAllSSLCertsWithOCSPError" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

resetSSLCertsWithOCSPError

重置一组证书OCSP错误状态

  • 角色:admin
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/resetSSLCertsWithOCSPError
  • RPCrpc resetSSLCertsWithOCSPError (ResetSSLCertsWithOCSPErrorRequest) returns (RPCSuccess);

请求对象 (ResetSSLCertsWithOCSPErrorRequest)

{
  "sslCertIds": "[]int64"
}

响应对象 (RPCSuccess)

{}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/resetSSLCertsWithOCSPError" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'

updateSSLCert

修改证书

  • 角色:admin, user
  • HTTPPOST https://backend.dooki.cloud/SSLCertService/updateSSLCert
  • RPCrpc updateSSLCert (UpdateSSLCertRequest) returns (RPCSuccess);

请求对象 (UpdateSSLCertRequest)

{
  "sslCertId": "int64",
  "isOn": "bool // 是否启用",
  "name": "string // 名称",
  "description": "string // 描述(备注)",
  "serverName": "string",
  "isCA": "bool",
  "certData": "bytes",
  "keyData": "bytes",
  "timeBeginAt": "int64",
  "timeEndAt": "int64",
  "dnsNames": "[]string",
  "commonNames": "[]string"
}

响应对象 (RPCSuccess)

{}

调用示例

curl -X POST "https://backend.dooki.cloud/SSLCertService/updateSSLCert" \
  -H "Content-Type: application/json" \
  -H "X-Edge-Access-Token: <YOUR_TOKEN>" \
  -d '{
    ...
  }'