Sample configuration for ASP.Net Core 1.1 to use Azure AD for Service to Service Authentication. Update your Startup.cs to have the following public void ConfigureServices(IServiceCollection services) { services.AddAuthentication(); ... } public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) { app.UseJwtBearerAuthentication(new JwtBearerOptions { Authority = "https://login.microsoftonline.com/{AAD Tenant Name or ID}", Audience = "{Application ID URL}" }); ... } Microsoft.AspNetCore.Authentication.JwtBearer defaults to using OpenID Connect discovery document to validate the bearer token. The Authority is the prefix for the the discovery document. The middleware will append ".well-known/openid-configuration/" to whatever you pass in to the Authority. If your IDP has a diffrent endpoint for the discovery document, you can specify the MetadataAddress option, tha...