The auth-source library is simply a way for Emacs and Gnus, among others, to answer the old burning question “What are my user name and password?”
(This is different from the old question about burning “Where is the fire extinguisher, please?”.)
The auth-source library supports more than just the user name or the password (known as the secret).
Similarly, the auth-source library supports multiple storage backend, currently either the classic “netrc” backend, examples of which you can see later in this document, or the Secret Service API. This is done with EIEIO-based backends and you can write your own if you want.