# Microsoft.AspNetCore.Authentication

``` diff
 namespace Microsoft.AspNetCore.Authentication {
     public class AuthenticationBuilder {
+        public virtual AuthenticationBuilder AddPolicyScheme<TService>(string authenticationScheme, string displayName, Action<PolicySchemeOptions, TService> configureOptions) where TService : class;
+        public virtual AuthenticationBuilder AddRemoteScheme<TOptions, THandler, TService>(string authenticationScheme, string displayName, Action<TOptions, TService> configureOptions) where TOptions : RemoteAuthenticationOptions, new() where THandler : RemoteAuthenticationHandler<TOptions> where TService : class;
+        public virtual AuthenticationBuilder AddScheme<TOptions, THandler, TService>(string authenticationScheme, Action<TOptions, TService> configureOptions) where TOptions : AuthenticationSchemeOptions, new() where THandler : AuthenticationHandler<TOptions> where TService : class;
+        public virtual AuthenticationBuilder AddScheme<TOptions, THandler, TService>(string authenticationScheme, string displayName, Action<TOptions, TService> configureOptions) where TOptions : AuthenticationSchemeOptions, new() where THandler : AuthenticationHandler<TOptions> where TService : class;
     }
     public class AuthenticationSchemeProvider : IAuthenticationSchemeProvider {
+        public virtual bool TryAddScheme(AuthenticationScheme scheme);
     }
     public interface IAuthenticationSchemeProvider {
+        bool TryAddScheme(AuthenticationScheme scheme);
     }
 }
```

