GO-SDK
概述
本文档主要介绍证书服务 GO SDK的安装和使用。
在阅读本文档前,您需要先开通证书服务,并了解证书服务的基本知识。若您还不了解证书服务,可以参考证书简介及同目录下其它子文档。
安装SDK工具包
环境准备
GO SDK可以在go1.3及以上环境下运行。
安装SDK
直接从github下载
使用go get
工具从github进行下载:
go get github.com/baidubce/bce-sdk-go
SDK目录结构
bce-sdk-go
|--auth //BCE签名和权限认证
|--bce //BCE公用基础组件
|--http //BCE的http通信模块
|--services //BCE相关服务目录
| |--cert //SSL证书服务
| | |--client.go //证书管理服务客户端入口类
| | |--model.go //证书管理服务客户端数据结构
|--util //BCE公用的工具实现
卸载SDK
预期卸载SDK时,删除下载的源码即可。
初始化
确认Endpoint
用户若要自定义域名,可以通过传入ENDPOINT参数来指定。区域的概念请参考区域选择说明。
在开始SDK使用之前,需要您先确定好要在哪个区域进行操作,从而在配置CertClient时将区域对应的Endpoint做为参数填入。
证书服务目前不区分区域,ENDPOINT统一为:https://certificate.baidubce.com
获取密钥
要使用百度智能云产品,您需要拥有一个百度智能云账号和一个有效的 AK(Access Key ID)、SK(Secret Access Key)用来进行签名认证。
可以通过如下步骤获得并了解您的AK/SK信息:
2.创建AK/SK
获取到密钥后,需要在配置Client时做为参数填入。SDK集成了鉴权认证机制,需要将AK/SK按要求填入对应的位置,SDK将自动完成鉴权相关的工作。
新建Cert Client
Cert Client是证书服务的客户端,为开发者与证书服务进行交互提供了一系列的方法,新建Cert Client对象需要指定AK、SK、Endpoint。
import "github.com/baidubce/bce-sdk-go/services/cert"
func main() {
// 用户的Access Key ID和Secret Access Key
ACCESS_KEY_ID, SECRET_ACCESS_KEY := <your-access-key-id>, <your-secret-access-key>
// 访问证书的Endpoint
CERT_ENDPOINT := "https://certificate.baidubce.com"
// 创建cert client
certClient, err := cert.NewClient(ACCESS_KEY_ID, SECRET_ACCESS_KEY, CERT_ENDPOINT)
}
证书管理
证书管理功能主要用于管理用户的SSL证书,当前支持上传证书。 请求中的参数解释见证书名词解释
创建证书
如下代码将创建证书:
args := &CreateCertArgs{
CertName: <your-cert-name>,
CertServerData: <your-cert-server-data>,
CertPrivateData: <your-cert-private-data>,
}
createResult, err := certClient.CreateCert(args)
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档创建证书。
修改证书名称
如下代码将更新证书名称:
args := &UpdateCertNameArgs{
CertName: "newCertName",
}
err := certClient.UpdateCertName(<your-cert-id>, args)
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档修改证书名称。
查看证书列表
如下代码将查看账户下的证书列表:
listCertResult, err := certClient.ListCerts()
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档查看证书列表。
查询证书列表详情
如下代码将查询证书列表详情:
listCertDetailResult, err := certClient.ListCertDetail()
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档查看证书列表详情。
获取证书详情
如下代码将获取证书详情信息:
result, err := certClient.GetCertDetail(<your-cert-id>)
返回字段语义与查询证书列表详情相同。
获取证书信息(包含证书指纹)
如下代码将获取包含证书指纹的信息:
result, err := certClient.GetCertMeta(<your-cert-id>)
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档获取证书信息。
删除证书
如下代码将删除证书:
err := CERT_CLIENT.DeleteCert(<your-cert-id>)
提示:
- 详细的参数配置及限制条件,可以参考证书服务 API文档删除证书。