Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add KMS Key management #27

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions auth.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import (
"strings"
"time"

api "github.com/infisical/go-sdk/packages/api/auth"
"github.com/infisical/go-sdk/packages/models"
"github.com/infisical/go-sdk/packages/util"
api "github.com/levidurfee/go-sdk/packages/api/auth"
"github.com/levidurfee/go-sdk/packages/models"
"github.com/levidurfee/go-sdk/packages/util"

v4 "github.com/aws/aws-sdk-go-v2/aws/signer/v4"
)
Expand Down
6 changes: 3 additions & 3 deletions client.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ import (
"time"

"github.com/go-resty/resty/v2"
api "github.com/infisical/go-sdk/packages/api/auth"
"github.com/infisical/go-sdk/packages/models"
"github.com/infisical/go-sdk/packages/util"
api "github.com/levidurfee/go-sdk/packages/api/auth"
"github.com/levidurfee/go-sdk/packages/models"
"github.com/levidurfee/go-sdk/packages/util"
)

type InfisicalClient struct {
Expand Down
4 changes: 2 additions & 2 deletions dynamic_secrets.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package infisical

import (
api "github.com/infisical/go-sdk/packages/api/dynamic_secrets"
"github.com/infisical/go-sdk/packages/models"
api "github.com/levidurfee/go-sdk/packages/api/dynamic_secrets"
"github.com/levidurfee/go-sdk/packages/models"
)

type ListDynamicSecretLeasesOptions = api.ListDynamicSecretLeaseV1Request
Expand Down
4 changes: 2 additions & 2 deletions folders.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package infisical

import (
api "github.com/infisical/go-sdk/packages/api/folders"
"github.com/infisical/go-sdk/packages/models"
api "github.com/levidurfee/go-sdk/packages/api/folders"
"github.com/levidurfee/go-sdk/packages/models"
)

type ListFoldersOptions = api.ListFoldersV1Request
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module github.com/infisical/go-sdk
module github.com/levidurfee/go-sdk

go 1.21

Expand Down
43 changes: 42 additions & 1 deletion kms.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,24 @@ package infisical
import (
"encoding/base64"

api "github.com/infisical/go-sdk/packages/api/kms"
api "github.com/levidurfee/go-sdk/packages/api/kms"
)

type KmsEncryptDataOptions = api.KmsEncryptDataV1Request
type KmsDecryptDataOptions = api.KmsDecryptDataV1Request
type KmsListKeysOptions = api.KmsListKeysV1Request
type KmsCreateKeyOptions = api.KmsCreateKeyV1Request
type KmsUpdateKeyOptions = api.KmsUpdateKeyV1Request
type KmsDeleteKeyOptions = api.KmsDeleteKeyV1Request
type KmsKey = api.KmsKey

type KmsInterface interface {
EncryptData(options KmsEncryptDataOptions) (string, error)
DecryptData(options KmsDecryptDataOptions) (string, error)
ListKeys(options KmsListKeysOptions) ([]KmsKey, error)
CreateKey(options KmsCreateKeyOptions) (*KmsKey, error)
UpdateKey(options KmsUpdateKeyOptions) (*KmsKey, error)
DeleteKey(options KmsDeleteKeyOptions) (*KmsKey, error)
}

type Kms struct {
Expand Down Expand Up @@ -44,6 +53,38 @@ func (f *Kms) DecryptData(options KmsDecryptDataOptions) (string, error) {
return string(decodedPlaintext), nil
}

func (f *Kms) ListKeys(options KmsListKeysOptions) ([]KmsKey, error) {
res, err := api.CallListKmsKeysV1(f.client.httpClient, options)
if err != nil {
return nil, err
}
return res.Keys, nil
}

func (f *Kms) CreateKey(options KmsCreateKeyOptions) (*KmsKey, error) {
res, err := api.CallCreateKmsKeyV1(f.client.httpClient, options)
if err != nil {
return nil, err
}
return &res.Key, nil
}

func (f *Kms) UpdateKey(options KmsUpdateKeyOptions) (*KmsKey, error) {
res, err := api.CallUpdateKmsKeyV1(f.client.httpClient, options)
if err != nil {
return nil, err
}
return &res.Key, nil
}

func (f *Kms) DeleteKey(options KmsDeleteKeyOptions) (*KmsKey, error) {
res, err := api.CallDeleteKmsKeyV1(f.client.httpClient, options)
if err != nil {
return nil, err
}
return &res.Key, nil
}

func NewKms(client *InfisicalClient) KmsInterface {
return &Kms{client: client}
}
6 changes: 3 additions & 3 deletions models.go
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package infisical

import (
api "github.com/infisical/go-sdk/packages/api/auth"
"github.com/infisical/go-sdk/packages/errors"
"github.com/infisical/go-sdk/packages/models"
api "github.com/levidurfee/go-sdk/packages/api/auth"
"github.com/levidurfee/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/models"
)

type MachineIdentityCredential = api.MachineIdentityAuthLoginResponse
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/aws_iam_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callAWSIamAuthLoginOperation = "CallAWSIamAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/azure_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const azureAuthLoginOperation = "CallAzureAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/gcp_id_token_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callGCPAuthLoginOperation = "CallGCPAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/kubernetes_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callKubernetesAuthLoginOperation = "CallKubernetesAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/oidc_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callOidcAuthLoginOperation = "CallOidcAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/renew_access_token.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callRenewAccessToken = "CallRenewAccessToken"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/auth/universal_auth_login.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callUniversalAuthLoginOperation = "CallUniversalAuthLogin"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/create_lease.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callCreateDynamicSecretLeaseV1Operation = "CallCreateDynamicSecretLeaseV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/delete_lease.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callDeleteDynamicSecretLeaseV1Operation = "CallDeleteDynamicSecretLeaseV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/get_lease_by_id.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callGetDynamicSecretLeaseByIdV1Operation = "CallGetDynamicSecretLeaseByIdV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/get_secret_by_name.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callGetDynamicSecretByNameV1Operation = "CallGetDynamicSecretSecretByNameV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/list_lease.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callListDynamicSecretLeaseV1Operation = "CallListDynamicSecretLeaseV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/list_secrets.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callListDynamicSecretsV1Operation = "CallListDynamicSecretSecretsV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/models.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package api

import (
"github.com/infisical/go-sdk/packages/models"
"github.com/levidurfee/go-sdk/packages/models"
)

type CreateDynamicSecretLeaseV1Request struct {
Expand Down
2 changes: 1 addition & 1 deletion packages/api/dynamic_secrets/renew_lease.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callRenewDynamicSecretLeaseV1Operation = "CallRenewDynamicSecretLeaseV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/folders/create_folder.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callCreateFolderV1Operation = "CallCreateFolderV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/folders/delete_folder.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"fmt"

"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callDeleteFolderV1Operation = "CallDeleteFolderV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/folders/list_folders.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package api

import (
"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callListFoldersV1Operation = "CallListFoldersV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/folders/models.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package api

import (
"github.com/infisical/go-sdk/packages/models"
"github.com/levidurfee/go-sdk/packages/models"
)

// List folders
Expand Down
2 changes: 1 addition & 1 deletion packages/api/folders/update_folder.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"fmt"

"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callUpdateFolderV1Operation = "CallUpdateFolderV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/kms/decrypt_data.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"fmt"

"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callKmsDecryptDataOperationV1 = "CallKmsDecryptDataV1"
Expand Down
2 changes: 1 addition & 1 deletion packages/api/kms/encrypt_data.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"fmt"

"github.com/go-resty/resty/v2"
"github.com/infisical/go-sdk/packages/errors"
"github.com/levidurfee/go-sdk/packages/errors"
)

const callKmsEncryptDataOperationV1 = "CallKmsEncryptDataV1"
Expand Down
Loading