Cognito supports different authentication flow use cases, such as server-side authentication flow, client-side authentication flow, and custom authentication flow. We will look at server-side authentication flow in this recipe. Server-side authentication is mostly used with SDKs, for server-side languages like Java, Node.js, and so on.
To work with a Cognito user pool, we also need an app client for the user pool. In this recipe, we will first define an app client that supports username and password authentication for admins. After that, we will execute admin-specific API commands from the CLI, in order to demonstrate the server-side authentication flow.