There are many code samples showing how to protect a WebApi by registering authentication in Startup.cs, and they all use any one of the Owin Middlewares of UseWindowsAzureActiveDirectoryBearerAuthentication, UseJwtBearerAuthentication, UseOpenIdConnectAuthentication, or UseOAuth2Authentication. But I cannot find any documentation explain how to choose which of these. They all seem to set ClaimsPrincipal based on a Bearer token.
Are there times when one is appropriate over the others, or is it a random choice?