How to develop a database?

Can anyone point me towards, or explain how I can manage users in a database (someone told me that it is usually in 3 tables: users, accounts and policies, but I didn't really understand what is stored in the accounts table...) how are these connected to the rest of the database tables?


2 Answers

  • Anonymous
    2 years ago
    Best Answer

    In most designs that manage user authentication and authorization, the 3 common tables are {users, groups, access control list}. I presume that's one-to-one for {users, accounts, policies.}

    The idea is that you want one user account per person - you don't want to have multiple people using the same account -- to hard to establish responsibility otherwise. But you don't want to deal with access control by individual user, you want to create "groups" that have particular responsibilities. For example, groups that can edit data in one module might not be able to even see data in another module. Or groups that can backup the database might not need the ability to create new user accounts.

    It's much easier to assign access by group, then figure out what groups each user needs to belong to in order for them to get their job done. Also, when you want to quickly deny access to a facility then reinstate it, it's much easier to only have to manage 3 groups rather than 36 individual users.

    However, that's not the only way to organize things. That's a "minimal administration/control model." Sometimes you want more or less granularity. For example, for niche BBS/forums, where your users total under 30, you might not need the extra layer of groups - just users and access control is all that required. For larger applications, more granularity might be required. You might want to have "users" collected by "group" and "access control levels" grouped by "Roles", and then be able to assign Users or Groups to various Roles.

    • Daniel2 years agoReport

      If any of this is wrong do tell me because I am a total beginner in the area, just trying to understand how this stuff works.. and how do I connect the users to the rest of the db?

  • Chris
    Lv 7
    2 years ago

    That entirely depends on what you're using the db for.

    A single user table might be enough.

    What are you building?

Still have questions? Get your answers by asking now.