chore(authorizer): refactor order of checks
Signed-off-by: Leonardo Di Donato <leodidonato@gmail.com>pull/11382/head
parent
83e321366e
commit
65622b4289
|
@ -53,12 +53,12 @@ func authorizeWriteSecret(ctx context.Context, orgID influxdb.ID) error {
|
||||||
|
|
||||||
// LoadSecret checks to see if the authorizer on context has read access to the secret key provided.
|
// LoadSecret checks to see if the authorizer on context has read access to the secret key provided.
|
||||||
func (s *SecretService) LoadSecret(ctx context.Context, orgID influxdb.ID, key string) (string, error) {
|
func (s *SecretService) LoadSecret(ctx context.Context, orgID influxdb.ID, key string) (string, error) {
|
||||||
secret, err := s.s.LoadSecret(ctx, orgID, key)
|
if err := authorizeReadSecret(ctx, orgID); err != nil {
|
||||||
if err != nil {
|
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := authorizeReadSecret(ctx, orgID); err != nil {
|
secret, err := s.s.LoadSecret(ctx, orgID, key)
|
||||||
|
if err != nil {
|
||||||
return "", err
|
return "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,12 +67,12 @@ func (s *SecretService) LoadSecret(ctx context.Context, orgID influxdb.ID, key s
|
||||||
|
|
||||||
// GetSecretKeys checks to see if the authorizer on context has read access to all the secrets belonging to orgID.
|
// GetSecretKeys checks to see if the authorizer on context has read access to all the secrets belonging to orgID.
|
||||||
func (s *SecretService) GetSecretKeys(ctx context.Context, orgID influxdb.ID) ([]string, error) {
|
func (s *SecretService) GetSecretKeys(ctx context.Context, orgID influxdb.ID) ([]string, error) {
|
||||||
secrets, err := s.s.GetSecretKeys(ctx, orgID)
|
if err := authorizeReadSecret(ctx, orgID); err != nil {
|
||||||
if err != nil {
|
|
||||||
return []string{}, err
|
return []string{}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := authorizeReadSecret(ctx, orgID); err != nil {
|
secrets, err := s.s.GetSecretKeys(ctx, orgID)
|
||||||
|
if err != nil {
|
||||||
return []string{}, err
|
return []string{}, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -250,6 +250,7 @@ func TestSecretService_GetSecretKeys(t *testing.T) {
|
||||||
OrgID: influxdbtesting.IDPtr(10),
|
OrgID: influxdbtesting.IDPtr(10),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
org: influxdb.ID(10),
|
||||||
},
|
},
|
||||||
wants: wants{
|
wants: wants{
|
||||||
err: &influxdb.Error{
|
err: &influxdb.Error{
|
||||||
|
|
2
authz.go
2
authz.go
|
@ -115,7 +115,7 @@ const (
|
||||||
MacrosResourceType = ResourceType("macros") // 8
|
MacrosResourceType = ResourceType("macros") // 8
|
||||||
// ScraperResourceType gives permission to one or more scrapers.
|
// ScraperResourceType gives permission to one or more scrapers.
|
||||||
ScraperResourceType = ResourceType("scrapers") // 9
|
ScraperResourceType = ResourceType("scrapers") // 9
|
||||||
// SecretsResourceType gives permission to one or more scrapers.
|
// SecretsResourceType gives permission to one or more secrets.
|
||||||
SecretsResourceType = ResourceType("secrets") // 10
|
SecretsResourceType = ResourceType("secrets") // 10
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue