Explain how authentication and authorization are implemented in ASP.NET Core. Describe the roles of ASP.NET Core Identity, JWT, OAuth 2.0, and OpenID Connect.