I am writing a module that lets a user set given properties that are viewable by all users. This all happens on the /users url.
If the user is signed in and the url is /users, then the users own profile is shown If the url is /users/{id} then that id is taken and used to query the database to get that users parameters.
My question is this - is it considered bad practice to use the users uid as the id parameter? This essentially gives a row ID away for a user's data. The only other parameter that every user has at the onset is an email address, so I am not sure what else to do.
Is there another best practice?
My rules for that collection are set so that any user can read a record, but any user can only edit their own profile. I am putting a lot of trust in that rule by giving away that ID.