Prevent adding user with access key already in use (#1103)
* Release v0.10.3 (#1098) Signed-off-by: Daniel Valdivia <18384552+dvaldivia@users.noreply.github.com> WIP check if accesskey exists before adding user * Added error when duplicate access key attempted * Removed unneeded code * Changed api to getUserInfo * Corrected error messages Co-authored-by: Daniel Valdivia <18384552+dvaldivia@users.noreply.github.com>
This commit is contained in:
@@ -213,7 +213,14 @@ func getUserAddResponse(session *models.Principal, params admin_api.AddUserParam
|
|||||||
// create a minioClient interface implementation
|
// create a minioClient interface implementation
|
||||||
// defining the client to be used
|
// defining the client to be used
|
||||||
adminClient := AdminClient{Client: mAdmin}
|
adminClient := AdminClient{Client: mAdmin}
|
||||||
|
var userExists bool
|
||||||
|
|
||||||
|
_, err = adminClient.getUserInfo(ctx, *params.Body.AccessKey)
|
||||||
|
userExists = err == nil
|
||||||
|
|
||||||
|
if userExists {
|
||||||
|
return nil, prepareError(errNonUniqueAccessKey)
|
||||||
|
}
|
||||||
user, err := addUser(
|
user, err := addUser(
|
||||||
ctx,
|
ctx,
|
||||||
adminClient,
|
adminClient,
|
||||||
|
|||||||
@@ -33,7 +33,8 @@ var (
|
|||||||
errLicenseNotFound = errors.New("license not found")
|
errLicenseNotFound = errors.New("license not found")
|
||||||
errAvoidSelfAccountDelete = errors.New("logged in user cannot be deleted by itself")
|
errAvoidSelfAccountDelete = errors.New("logged in user cannot be deleted by itself")
|
||||||
errAccessDenied = errors.New("access denied")
|
errAccessDenied = errors.New("access denied")
|
||||||
errOauth2Provider = errors.New("error contacting the external identity provider")
|
errOauth2Provider = errors.New("unable to contact configured identity provider")
|
||||||
|
errNonUniqueAccessKey = errors.New("access key already in use")
|
||||||
)
|
)
|
||||||
|
|
||||||
// Tiering errors
|
// Tiering errors
|
||||||
|
|||||||
Reference in New Issue
Block a user