You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When creating group aliases, if one is to use a canonical_id already associated with another group alias an orphaned group alias is created. This orphaned alias is not updatable (to change canonical_id) nor deletable.
To Reproduce
Steps to reproduce the behavior
note: while userpass doesnt support groups, it appears to exhibit the same behavior that we observed in our ldap/okta setup, and so was used for simplicity.
Setup our auth backends (2x userpass) and record their accessors:
Create our group and 2x group aliases for that group
GRP_ID=$(vault write -field id identity/group name=fubar type=external)
UP1_GAID=$(vault write -field id identity/group-alias name=grp1 mount_accessor=$UP1_MNT_ACC canonical_id=$GRP_ID)
UP2_GAID=$(vault write -field id identity/group-alias name=grp2 mount_accessor=$UP2_MNT_ACC canonical_id=$GRP_ID)
Observe both group alias objects were successfully created using the same canonical_id despite violating the 1:1 relationship between group/group-alias.
An error should be thrown when a second group alias is created with the same canonical id.
(optional) A flag should be provided to allow skipping the current canonical_id against an existing group checks when updating or deleting a group-alias.
Environment:
note: this was experienced in our production environment (first vault status) and reproduced on a dev instance:
CLI:
$ vault version
Vault v0.11.0 ('87492f9258e0227f3717e3883c6a8be5716bf564')
Production:
$ VAULT_ADDR=https://vault.example.com:8200 vault status
Key Value
--- -----
Seal Type shamir
Sealed false
Total Shares 6
Threshold 2
Version 0.11.0
Cluster Name company-name
Cluster ID 2e09c8dd-feed-dead-beef-73843effa59c
HA Enabled true
HA Cluster n/a
HA Mode active
Local Dev Instance:
$ vault status
Key Value
--- -----
Seal Type shamir
Sealed false
Total Shares 1
Threshold 1
Version 0.11.0
Cluster Name vault-cluster-992ee882
Cluster ID 215cb217-486c-6bdf-da5b-3edef71c61a3
HA Enabled false
In cases where the group is deleted (and possibly even when it is not), the orphaned group-alias will be unable to resolve the group and will prevent users within that group from authenticating completely.
In our production environment, in place of userpass auth backends we had ldap and okta backends which prevented users from the impacted groups from logging in via ldap (our primary means) since it was the first alias created and therefore orphaned.
The text was updated successfully, but these errors were encountered:
Describe the bug
When creating group aliases, if one is to use a canonical_id already associated with another group alias an orphaned group alias is created. This orphaned alias is not updatable (to change canonical_id) nor deletable.
To Reproduce
Steps to reproduce the behavior
note: while userpass doesnt support groups, it appears to exhibit the same behavior that we observed in our ldap/okta setup, and so was used for simplicity.
At this point, we have a few ways to make things fail:
Example stack trace output from vault server:
Expected behavior
Environment:
note: this was experienced in our production environment (first vault status) and reproduced on a dev instance:
CLI:
Production:
Local Dev Instance:
All systems are running RHEL 7.x x86_64
Vault server configuration file(s):
Additional context
All reproduction was done with a root token.
In cases where the group is deleted (and possibly even when it is not), the orphaned group-alias will be unable to resolve the group and will prevent users within that group from authenticating completely.
In our production environment, in place of userpass auth backends we had ldap and okta backends which prevented users from the impacted groups from logging in via ldap (our primary means) since it was the first alias created and therefore orphaned.
The text was updated successfully, but these errors were encountered: