diff --git a/src/Microsoft.AspNetCore.Authentication.Cookies/CookieAuthenticationOptions.cs b/src/Microsoft.AspNetCore.Authentication.Cookies/CookieAuthenticationOptions.cs
index 35017f9c4d..78156caecc 100644
--- a/src/Microsoft.AspNetCore.Authentication.Cookies/CookieAuthenticationOptions.cs
+++ b/src/Microsoft.AspNetCore.Authentication.Cookies/CookieAuthenticationOptions.cs
@@ -147,68 +147,5 @@ namespace Microsoft.AspNetCore.Authentication.Cookies
///
///
public TimeSpan ExpireTimeSpan { get; set; }
-
- #region Obsolete API
- ///
- ///
- /// This property is obsolete and will be removed in a future version. The recommended alternative is on .
- ///
- ///
- /// Determines the cookie name used to persist the identity. The default value is ".AspNetCore.Cookies".
- /// This value should be changed if you change the name of the AuthenticationScheme, especially if your
- /// system uses the cookie authentication handler multiple times.
- ///
- ///
- [Obsolete("This property is obsolete and will be removed in a future version. The recommended alternative is " + nameof(Cookie) + "." + nameof(CookieBuilder.Name) + ".")]
- public string CookieName { get => Cookie.Name; set => Cookie.Name = value; }
-
- ///
- ///
- /// This property is obsolete and will be removed in a future version. The recommended alternative is on .
- ///
- ///
- /// Determines the domain used to create the cookie. Is not provided by default.
- ///
- ///
- [Obsolete("This property is obsolete and will be removed in a future version. The recommended alternative is " + nameof(Cookie) + "." + nameof(CookieBuilder.Domain) + ".")]
- public string CookieDomain { get => Cookie.Domain; set => Cookie.Domain = value; }
-
- ///
- ///
- /// This property is obsolete and will be removed in a future version. The recommended alternative is on .
- ///
- ///
- /// Determines the path used to create the cookie. The default value is "/" for highest browser compatibility.
- ///
- ///
- [Obsolete("This property is obsolete and will be removed in a future version. The recommended alternative is " + nameof(Cookie) + "." + nameof(CookieBuilder.Path) + ".")]
- public string CookiePath { get => Cookie.Path; set => Cookie.Path = value; }
-
- ///
- ///
- /// This property is obsolete and will be removed in a future version. The recommended alternative is on .
- ///
- ///
- /// Determines if the browser should allow the cookie to be accessed by client-side javascript. The
- /// default is true, which means the cookie will only be passed to http requests and is not made available
- /// to script on the page.
- ///
- ///
- [Obsolete("This property is obsolete and will be removed in a future version. The recommended alternative is " + nameof(Cookie) + "." + nameof(CookieBuilder.HttpOnly) + ".")]
- public bool CookieHttpOnly { get => Cookie.HttpOnly; set => Cookie.HttpOnly = value; }
-
- ///
- ///
- /// This property is obsolete and will be removed in a future version. The recommended alternative is on .
- ///
- ///
- /// Determines if the cookie should only be transmitted on HTTPS request. The default is to limit the cookie
- /// to HTTPS requests if the page which is doing the SignIn is also HTTPS. If you have an HTTPS sign in page
- /// and portions of your site are HTTP you may need to change this value.
- ///
- ///
- [Obsolete("This property is obsolete and will be removed in a future version. The recommended alternative is " + nameof(Cookie) + "." + nameof(CookieBuilder.SecurePolicy) + ".")]
- public CookieSecurePolicy CookieSecure { get => Cookie.SecurePolicy; set => Cookie.SecurePolicy = value; }
- #endregion
}
}
diff --git a/src/Microsoft.AspNetCore.Authentication.Cookies/breakingchanges.netcore.json b/src/Microsoft.AspNetCore.Authentication.Cookies/breakingchanges.netcore.json
new file mode 100644
index 0000000000..7a1ab79625
--- /dev/null
+++ b/src/Microsoft.AspNetCore.Authentication.Cookies/breakingchanges.netcore.json
@@ -0,0 +1,52 @@
+ [
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public Microsoft.AspNetCore.Http.CookieSecurePolicy get_CookieSecure()",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Boolean get_CookieHttpOnly()",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.String get_CookieDomain()",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.String get_CookieName()",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.String get_CookiePath()",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Void set_CookieDomain(System.String value)",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Void set_CookieHttpOnly(System.Boolean value)",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Void set_CookieName(System.String value)",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Void set_CookiePath(System.String value)",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationOptions : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions",
+ "MemberId": "public System.Void set_CookieSecure(Microsoft.AspNetCore.Http.CookieSecurePolicy value)",
+ "Kind": "Removal"
+ }
+ ]
\ No newline at end of file
diff --git a/src/Microsoft.AspNetCore.Authentication.JwtBearer/JwtBearerHandler.cs b/src/Microsoft.AspNetCore.Authentication.JwtBearer/JwtBearerHandler.cs
index 452d9639f4..4f03ccd69a 100644
--- a/src/Microsoft.AspNetCore.Authentication.JwtBearer/JwtBearerHandler.cs
+++ b/src/Microsoft.AspNetCore.Authentication.JwtBearer/JwtBearerHandler.cs
@@ -22,7 +22,7 @@ namespace Microsoft.AspNetCore.Authentication.JwtBearer
{
private OpenIdConnectConfiguration _configuration;
- public JwtBearerHandler(IOptionsMonitor options, ILoggerFactory logger, UrlEncoder encoder, IDataProtectionProvider dataProtection, ISystemClock clock)
+ public JwtBearerHandler(IOptionsMonitor options, ILoggerFactory logger, UrlEncoder encoder, ISystemClock clock)
: base(options, logger, encoder, clock)
{ }
diff --git a/src/Microsoft.AspNetCore.Authentication.JwtBearer/breakingchanges.netcore.json b/src/Microsoft.AspNetCore.Authentication.JwtBearer/breakingchanges.netcore.json
new file mode 100644
index 0000000000..d17003a80a
--- /dev/null
+++ b/src/Microsoft.AspNetCore.Authentication.JwtBearer/breakingchanges.netcore.json
@@ -0,0 +1,7 @@
+ [
+ {
+ "TypeId": "public class Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler : Microsoft.AspNetCore.Authentication.AuthenticationHandler",
+ "MemberId": "public .ctor(Microsoft.Extensions.Options.IOptionsMonitor options, Microsoft.Extensions.Logging.ILoggerFactory logger, System.Text.Encodings.Web.UrlEncoder encoder, Microsoft.AspNetCore.DataProtection.IDataProtectionProvider dataProtection, Microsoft.AspNetCore.Authentication.ISystemClock clock)",
+ "Kind": "Removal"
+ }
+ ]
\ No newline at end of file
diff --git a/src/Microsoft.AspNetCore.Authentication/AuthenticationServiceCollectionExtensions.cs b/src/Microsoft.AspNetCore.Authentication/AuthenticationServiceCollectionExtensions.cs
index b274eaace4..6c381b84ab 100644
--- a/src/Microsoft.AspNetCore.Authentication/AuthenticationServiceCollectionExtensions.cs
+++ b/src/Microsoft.AspNetCore.Authentication/AuthenticationServiceCollectionExtensions.cs
@@ -46,48 +46,6 @@ namespace Microsoft.Extensions.DependencyInjection
return builder;
}
- [Obsolete("AddScheme is obsolete. Use AddAuthentication().AddScheme instead.")]
- public static IServiceCollection AddScheme(this IServiceCollection services, string authenticationScheme, string displayName, Action configureScheme, Action configureOptions)
- where TOptions : AuthenticationSchemeOptions, new()
- where THandler : AuthenticationHandler
- {
- services.AddAuthentication(o =>
- {
- o.AddScheme(authenticationScheme, scheme => {
- scheme.HandlerType = typeof(THandler);
- scheme.DisplayName = displayName;
- configureScheme?.Invoke(scheme);
- });
- });
- if (configureOptions != null)
- {
- services.Configure(authenticationScheme, configureOptions);
- }
- services.AddTransient();
- return services;
- }
-
- [Obsolete("AddScheme is obsolete. Use AddAuthentication().AddScheme instead.")]
- public static IServiceCollection AddScheme(this IServiceCollection services, string authenticationScheme, Action configureOptions)
- where TOptions : AuthenticationSchemeOptions, new()
- where THandler : AuthenticationHandler
- => services.AddScheme(authenticationScheme, displayName: null, configureScheme: null, configureOptions: configureOptions);
-
- [Obsolete("AddScheme is obsolete. Use AddAuthentication().AddScheme instead.")]
- public static IServiceCollection AddScheme(this IServiceCollection services, string authenticationScheme, string displayName, Action configureOptions)
- where TOptions : AuthenticationSchemeOptions, new()
- where THandler : AuthenticationHandler
- => services.AddScheme(authenticationScheme, displayName, configureScheme: null, configureOptions: configureOptions);
-
- [Obsolete("AddScheme is obsolete. Use AddAuthentication().AddScheme instead.")]
- public static IServiceCollection AddRemoteScheme(this IServiceCollection services, string authenticationScheme, string displayName, Action configureOptions)
- where TOptions : RemoteAuthenticationOptions, new()
- where THandler : RemoteAuthenticationHandler
- {
- services.TryAddEnumerable(ServiceDescriptor.Singleton, EnsureSignInScheme>());
- return services.AddScheme(authenticationScheme, displayName, configureScheme: null, configureOptions: configureOptions);
- }
-
// Used to ensure that there's always a sign in scheme
private class EnsureSignInScheme : IPostConfigureOptions where TOptions : RemoteAuthenticationOptions
{
diff --git a/src/Microsoft.AspNetCore.Authentication/breakingchanges.netcore.json b/src/Microsoft.AspNetCore.Authentication/breakingchanges.netcore.json
new file mode 100644
index 0000000000..d5bc6954ef
--- /dev/null
+++ b/src/Microsoft.AspNetCore.Authentication/breakingchanges.netcore.json
@@ -0,0 +1,22 @@
+ [
+ {
+ "TypeId": "public static class Microsoft.Extensions.DependencyInjection.AuthenticationServiceCollectionExtensions",
+ "MemberId": "public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddRemoteScheme(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.String authenticationScheme, System.String displayName, System.Action configureOptions) where T0 : Microsoft.AspNetCore.Authentication.RemoteAuthenticationOptions, new() where T1 : Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public static class Microsoft.Extensions.DependencyInjection.AuthenticationServiceCollectionExtensions",
+ "MemberId": "public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddScheme(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.String authenticationScheme, System.Action configureOptions) where T0 : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions, new() where T1 : Microsoft.AspNetCore.Authentication.AuthenticationHandler",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public static class Microsoft.Extensions.DependencyInjection.AuthenticationServiceCollectionExtensions",
+ "MemberId": "public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddScheme(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.String authenticationScheme, System.String displayName, System.Action configureScheme, System.Action configureOptions) where T0 : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions, new() where T1 : Microsoft.AspNetCore.Authentication.AuthenticationHandler",
+ "Kind": "Removal"
+ },
+ {
+ "TypeId": "public static class Microsoft.Extensions.DependencyInjection.AuthenticationServiceCollectionExtensions",
+ "MemberId": "public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddScheme(this Microsoft.Extensions.DependencyInjection.IServiceCollection services, System.String authenticationScheme, System.String displayName, System.Action configureOptions) where T0 : Microsoft.AspNetCore.Authentication.AuthenticationSchemeOptions, new() where T1 : Microsoft.AspNetCore.Authentication.AuthenticationHandler",
+ "Kind": "Removal"
+ }
+ ]
\ No newline at end of file
diff --git a/src/Microsoft.AspNetCore.Authorization/AuthorizeAttribute.cs b/src/Microsoft.AspNetCore.Authorization/AuthorizeAttribute.cs
index 63bfa30d45..b1f0f8bae0 100644
--- a/src/Microsoft.AspNetCore.Authorization/AuthorizeAttribute.cs
+++ b/src/Microsoft.AspNetCore.Authorization/AuthorizeAttribute.cs
@@ -39,15 +39,5 @@ namespace Microsoft.AspNetCore.Authorization
/// Gets or sets a comma delimited list of schemes from which user information is constructed.
///
public string AuthenticationSchemes { get; set; }
-
- ///
- /// Gets or sets a comma delimited list of schemes from which user information is constructed.
- ///
- [Obsolete("Use AuthenticationSchemes instead.", error: false)]
- public string ActiveAuthenticationSchemes
- {
- get => AuthenticationSchemes;
- set => AuthenticationSchemes = value;
- }
}
}