How to serialize user profiles without natural keys?

Then, I think this the documentation needs to be adapted to include these assumptions, which are not obvious IMHO.
Two paragraphs mention that the USERNAME_FIELD should be unique, unless using a custom authentication backend - we have a custom authentication backend.
The docs do not mention that you have to implement a custom natural_key, if the username field is not unique and that AbstractBaseUser should not be used if there is no suitable unique group of fields for this natural_key implementation.

IMHO this is a major limitation, unnecessarily forcing users to re-implement AbstractBaseUser.