Cookies store small pieces of data in the user's browser and are used to implement sessions. Sessions associate user data stored on the server with a unique ID (stored in a cookie). Users are authenticated by verifying their username and password which starts a session if valid. Authentication verifies a user's identity, while authorization determines what resources they are allowed to access based on permissions.