Authentication is the process of determining are you who you say you are?. Authentication is not required until you enable access control (covered in the next section). At first, it might appear that authentication and access control are the same thing. They are both aspects of security, but authentication occurs before access control. In other words, MongoDB needs to first confirm you are who you say you are before deciding what actions you are allowed to perform.
Authentication itself takes different forms. In one case, you might be a user who wishes to run commands via the mongo shell. Another case would be a series of database commands being issued by an application using a MongoDB programming language driver. There is yet a third form of authentication whereby you can configure authentication between servers in a replica set or a sharded cluster (see Chapter...