MM-4998 Adding LoginIdAttribute to allow LDAP users to change their login ID without losing their account (#8756)
* Adding LoginIdAttribute * Modifying LDAP to use loginIDAttribute. * Adding IDAttribute migration and AD objectGUID support. * Removing unused idea. * Fix typo.
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
db6b8f6238
Коммит
d8dd271e43
@@ -22,9 +22,19 @@ var LdapSyncCmd = &cobra.Command{
|
||||
RunE: ldapSyncCmdF,
|
||||
}
|
||||
|
||||
var LdapIdMigrate = &cobra.Command{
|
||||
Use: "idmigrate",
|
||||
Short: "Migrate LDAP IdAttribute to new value",
|
||||
Long: "Migrate LDAP IdAttribute to new value. Run this utility then change the IdAttribute to the new value.",
|
||||
Example: " ldap idmigrate objectGUID",
|
||||
Args: cobra.ExactArgs(1),
|
||||
RunE: ldapIdMigrateCmdF,
|
||||
}
|
||||
|
||||
func init() {
|
||||
LdapCmd.AddCommand(
|
||||
LdapSyncCmd,
|
||||
LdapIdMigrate,
|
||||
)
|
||||
cmd.RootCmd.AddCommand(LdapCmd)
|
||||
}
|
||||
@@ -47,3 +57,22 @@ func ldapSyncCmdF(command *cobra.Command, args []string) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func ldapIdMigrateCmdF(command *cobra.Command, args []string) error {
|
||||
a, err := cmd.InitDBCommandContextCobra(command)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer a.Shutdown()
|
||||
|
||||
toAttribute := args[0]
|
||||
if ldapI := a.Ldap; ldapI != nil {
|
||||
if err := ldapI.MigrateIDAttribute(toAttribute); err != nil {
|
||||
cmd.CommandPrintErrorln("ERROR: AD/LDAP IdAttribute migration failed! Error: " + err.Error())
|
||||
} else {
|
||||
cmd.CommandPrettyPrintln("SUCCESS: AD/LDAP IdAttribute migration complete. You can now change your IdAttribute to: " + toAttribute)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user