Public keys are by definition not secret. The main thing to avoid, when storing a database of public keys, is encrypting information intended for party A under the public key of party B. This immediately violates the secrecy (and possibly privacy) of the information you wanted to transmit to party A, because assuming party B can now somehow access that encrypted information, it will be able to decrypt it via its local private key.
I'm quite sure there are many security standards that state the same thing in a way similar to the following: Any key management system must take care to correctly identify the legitimate owner of the key. (.. And in particular this is true for public keys).
That's why in TLS for example, public keys are embedded within public certificates, that unify both the public key itself and all the relevant information required to identify the legitimate holder of the corresponding private key.
If you still need to reference official sources, take a look for example at NIST's recommendation for key management:
https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-57pt1r5.pdf
(That's only Part I, and I'm seeing a lot of discussion of public key management here. You can find the other parts here)