Skip to content

Commit 103a80b

Browse files
committed
support aliyun kms ram mode
1 parent b2bbf9e commit 103a80b

File tree

2 files changed

+31
-9
lines changed

2 files changed

+31
-9
lines changed

common/encryption/const.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,4 +64,5 @@ var (
6464
EmptyPasswordKmsV3ClientInitError = fmt.Errorf("init kmsV3 client failed with empty password")
6565
EmptyClientKeyContentKmsV3ClientInitError = fmt.Errorf("init kmsV3 client failed with empty client key content")
6666
EmptyCaVerifyKmsV3ClientInitError = fmt.Errorf("init kmsV3 client failed with empty ca verify")
67+
EmptyEndpointKmsRamClientInitError = fmt.Errorf("init kmsRam client failed with empty endpoint")
6768
)

common/encryption/kms_client.go

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,19 @@ func checkKmsV1InitParam(regionId, ak, sk string) error {
7272
return nil
7373
}
7474

75+
func checkKmsRamInitParam(endpoint, ak, sk string) error {
76+
if len(endpoint) == 0 {
77+
return EmptyEndpointKmsRamClientInitError
78+
}
79+
if len(ak) == 0 {
80+
return EmptyAkKmsV1ClientInitError
81+
}
82+
if len(sk) == 0 {
83+
return EmptySkKmsV1ClientInitError
84+
}
85+
return nil
86+
}
87+
7588
func NewKmsV3ClientWithConfig(config *dkms_api.Config, caVerify string) (*TransferKmsClient, error) {
7689
var rErr error
7790
if rErr = checkKmsV3InitParam(config, caVerify); rErr != nil {
@@ -191,16 +204,15 @@ type RamKmsClient struct {
191204
}
192205

193206
func NewKmsRamClient(kmsConfig *constant.KMSConfig, regionId, ak, sk string) (*RamKmsClient, error) {
194-
var rErr error
195-
if rErr = checkKmsV1InitParam(regionId, ak, sk); rErr != nil {
196-
return nil, rErr
197-
}
198-
config := &openapi.Config{}
199-
config.AccessKeyId = tea.String(ak)
200-
config.AccessKeySecret = tea.String(sk)
201-
config.RegionId = tea.String(regionId)
202207
if kmsConfig == nil || len(kmsConfig.Endpoint) == 0 {
203-
_result, _err := kms20160120.NewClient(config)
208+
if err := checkKmsV1InitParam(regionId, ak, sk); err != nil {
209+
return nil, err
210+
}
211+
KmsV1Config := &openapi.Config{}
212+
KmsV1Config.AccessKeyId = tea.String(ak)
213+
KmsV1Config.AccessKeySecret = tea.String(sk)
214+
KmsV1Config.RegionId = tea.String(regionId)
215+
_result, _err := kms20160120.NewClient(KmsV1Config)
204216
if _err != nil {
205217
return nil, _err
206218
}
@@ -211,6 +223,15 @@ func NewKmsRamClient(kmsConfig *constant.KMSConfig, regionId, ak, sk string) (*R
211223
}
212224
return _ramClient, nil
213225
}
226+
if err := checkKmsRamInitParam(kmsConfig.Endpoint, ak, sk); err != nil {
227+
return nil, err
228+
}
229+
config := &openapi.Config{}
230+
config.AccessKeyId = tea.String(ak)
231+
config.AccessKeySecret = tea.String(sk)
232+
if len(regionId) != 0 {
233+
config.RegionId = tea.String(regionId)
234+
}
214235
config.Endpoint = tea.String(kmsConfig.Endpoint)
215236
config.Ca = tea.String(kmsConfig.CaContent)
216237
runtimeOption := &util.RuntimeOptions{}

0 commit comments

Comments
 (0)