Thanks for being a part of WWDC25!

How did we do? We’d love to know your thoughts on this year’s conference. Take the survey here

Issue with record.changePassword Clearing Keychain Information Hello,

I am developing a sample authorization plugin to sync the user’s local password to the network password. During the process, I prompt the user to enter both their old and new passwords in custom plugin. After the user enters the information, I use the following code to sync the passwords:

try record.changePassword(oldPssword, toPassword: newPassword)

However, I have noticed that this is clearing all saved keychain information, such as web passwords and certificates. Is it expected behavior for record.changePassword to clear previously stored keychain data?

If so, how can I overcome this issue and ensure the keychain information is preserved while syncing the password?

Thank you for your help!

Answered by DTS Engineer in 830141022

Changing a user’s password via Open Directory only changes it in… well… Open Directory. The password is shadowed in a variety of places and those shadows don’t update in that case.

This came up recently on another thread, so I suggest you read that before you go any further.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Changing a user’s password via Open Directory only changes it in… well… Open Directory. The password is shadowed in a variety of places and those shadows don’t update in that case.

This came up recently on another thread, so I suggest you read that before you go any further.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Issue with record.changePassword Clearing Keychain Information Hello,
 
 
Q