Skip to content

Commit e01412b

Browse files
committed
Add supprot for .NET 7.0.
1 parent 9a856bb commit e01412b

File tree

9 files changed

+216
-212
lines changed

9 files changed

+216
-212
lines changed
Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,12 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>netstandard2.0;netcoreapp3.1;net5.0;net6.0</TargetFrameworks>
5-
<Version>1.2.1</Version>
6-
</PropertyGroup>
7-
8-
<PropertyGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
9-
<DefineConstants>NETCORE2;NETSTANDARD;NETSTANDARD2_0</DefineConstants>
4+
<TargetFrameworks>netcoreapp3.1;net5.0;net6.0;net7.0</TargetFrameworks>
5+
<Version>1.2.2</Version>
106
</PropertyGroup>
117

128
<PropertyGroup Condition="'$(TargetFramework)' == 'netcoreapp3.1'">
13-
<DefineConstants>NETCORE3;NETSTANDARD;NETSTANDARD2_1</DefineConstants>
9+
<DefineConstants>NETCORE3;</DefineConstants>
1410
</PropertyGroup>
1511

1612
<PropertyGroup Condition="'$(TargetFramework)' == 'net5.0'">
@@ -21,23 +17,27 @@
2117
<DefineConstants>NET6;</DefineConstants>
2218
</PropertyGroup>
2319

24-
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
25-
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.1.0" />
26-
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="2.1.0" />
20+
<PropertyGroup Condition="'$(TargetFramework)' == 'net7.0'">
21+
<DefineConstants>NET7;</DefineConstants>
22+
</PropertyGroup>
23+
24+
<ItemGroup>
25+
<FrameworkReference Include="Microsoft.AspNetCore.App" />
2726
</ItemGroup>
2827

2928
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp3.1'">
30-
<FrameworkReference Include="Microsoft.AspNetCore.App" />
3129
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.1.0" />
3230
</ItemGroup>
3331

3432
<ItemGroup Condition="'$(TargetFramework)' == 'net5.0'">
35-
<FrameworkReference Include="Microsoft.AspNetCore.App" />
3633
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="5.0.0" />
3734
</ItemGroup>
3835

3936
<ItemGroup Condition="'$(TargetFramework)' == 'net6.0'">
40-
<FrameworkReference Include="Microsoft.AspNetCore.App" />
4137
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="6.0.0" />
4238
</ItemGroup>
39+
40+
<ItemGroup Condition="'$(TargetFramework)' == 'net7.0'">
41+
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="7.0.0" />
42+
</ItemGroup>
4343
</Project>
Lines changed: 50 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,53 @@
11
<?xml version="1.0" encoding="utf-8"?>
2+
23
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
3-
<metadata>
4-
<id>DynamicAuthorization.Mvc.Core</id>
5-
<version>$version$</version>
6-
<authors>Mohsen Esmailpour</authors>
7-
<owners>mo.esmp</owners>
8-
<projectUrl>https://github.com/mo-esmp/DynamicRoleBasedAuthorizationNETCore</projectUrl>
9-
<license type="expression">MIT</license>
10-
<requireLicenseAcceptance>false</requireLicenseAcceptance>
11-
<description>Dynamically authorize users without hard coding roles</description>
12-
<tags>authorize authorization authentication dynamic-authorization dynamic-authentication identity membership</tags>
13-
<releaseNotes></releaseNotes>
14-
<copyright></copyright>
15-
<readme>docs\README.md</readme>
16-
<dependencies>
17-
<group targetFramework=".NETStandard2.0">
18-
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="2.1.0" exclude="Build,Analyzers" />
19-
<dependency id="Microsoft.AspNetCore.Mvc" version="2.1.0" exclude="Build,Analyzers" />
20-
</group>
21-
<group targetFramework=".NETCoreApp3.1">
22-
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="3.1.0" exclude="Build,Analyzers" />
23-
</group>
24-
<group targetFramework=".NET5.0">
25-
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="5.0.0" exclude="Build,Analyzers" />
26-
</group>
27-
<group targetFramework=".NET6.0">
28-
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="6.0.0" exclude="Build,Analyzers" />
29-
</group>
30-
</dependencies>
31-
<frameworkReferences>
32-
<group targetFramework=".NETCoreApp3.1">
33-
<frameworkReference name="Microsoft.AspNetCore.App" />
34-
</group>
35-
<group targetFramework=".NET5.0">
36-
<frameworkReference name="Microsoft.AspNetCore.App" />
37-
</group>
38-
<group targetFramework=".NET6.0">
39-
<frameworkReference name="Microsoft.AspNetCore.App" />
40-
</group>
41-
</frameworkReferences>
42-
</metadata>
43-
<files>
44-
<file src="bin\release\netstandard2.0\*.dll" target="lib/netstandard2.0" />
45-
<file src="bin\release\netcoreapp3.1\*.dll" target="lib/netcoreapp3.1" />
46-
<file src="bin\release\net5.0\*.dll" target="lib/net5.0" />
47-
<file src="bin\release\net6.0\*.dll" target="lib/net6.0" />
48-
<file src="..\..\README.md" target="docs\" />
49-
</files>
4+
<metadata>
5+
<id>DynamicAuthorization.Mvc.Core</id>
6+
<version>$version$</version>
7+
<authors>Mohsen Esmailpour</authors>
8+
<owners>mo.esmp</owners>
9+
<projectUrl>https://github.com/mo-esmp/DynamicRoleBasedAuthorizationNETCore</projectUrl>
10+
<license type="expression">MIT</license>
11+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
12+
<description>Dynamically authorize users without hard coding roles</description>
13+
<tags>authorize authorization authentication dynamic-authorization dynamic-authentication identity membership</tags>
14+
<releaseNotes></releaseNotes>
15+
<copyright></copyright>
16+
<readme>docs\README.md</readme>
17+
<dependencies>
18+
<group targetFramework=".NETCoreApp3.1">
19+
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="3.1.0" exclude="Build,Analyzers" />
20+
</group>
21+
<group targetFramework=".NET5.0">
22+
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="5.0.0" exclude="Build,Analyzers" />
23+
</group>
24+
<group targetFramework=".NET6.0">
25+
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="6.0.0" exclude="Build,Analyzers" />
26+
</group>
27+
<group targetFramework=".NET7.0">
28+
<dependency id="Microsoft.AspNetCore.Identity.EntityFrameworkCore" version="7.0.0" exclude="Build,Analyzers" />
29+
</group>
30+
</dependencies>
31+
<frameworkReferences>
32+
<group targetFramework=".NETCoreApp3.1">
33+
<frameworkReference name="Microsoft.AspNetCore.App" />
34+
</group>
35+
<group targetFramework=".NET5.0">
36+
<frameworkReference name="Microsoft.AspNetCore.App" />
37+
</group>
38+
<group targetFramework=".NET6.0">
39+
<frameworkReference name="Microsoft.AspNetCore.App" />
40+
</group>
41+
<group targetFramework=".NET7.0">
42+
<frameworkReference name="Microsoft.AspNetCore.App" />
43+
</group>
44+
</frameworkReferences>
45+
</metadata>
46+
<files>
47+
<file src="bin\release\netcoreapp3.1\*.dll" target="lib/netcoreapp3.1" />
48+
<file src="bin\release\net5.0\*.dll" target="lib/net5.0" />
49+
<file src="bin\release\net6.0\*.dll" target="lib/net6.0" />
50+
<file src="bin\release\net7.0\*.dll" target="lib/net7.0" />
51+
<file src="..\..\README.md" target="docs\" />
52+
</files>
5053
</package>

src/DynamicAuthorization.Mvc.Core/Filters/DynamicAuthorizationFilter.cs

Lines changed: 12 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using Microsoft.AspNetCore.Identity;
44
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
55
using Microsoft.AspNetCore.Mvc;
6-
using Microsoft.AspNetCore.Mvc.Authorization;
76
using Microsoft.AspNetCore.Mvc.Controllers;
87
using Microsoft.AspNetCore.Mvc.Filters;
98
using Microsoft.EntityFrameworkCore;
@@ -14,7 +13,9 @@
1413

1514
namespace DynamicAuthorization.Mvc.Core
1615
{
17-
public class DynamicAuthorizationFilter<TDbContext> : DynamicAuthorizationFilter<TDbContext, IdentityUser, IdentityRole, string>
16+
public class
17+
DynamicAuthorizationFilter<TDbContext> : DynamicAuthorizationFilter<TDbContext, IdentityUser, IdentityRole,
18+
string>
1819
where TDbContext : IdentityDbContext
1920
{
2021
public DynamicAuthorizationFilter(
@@ -26,7 +27,9 @@ IRoleAccessStore roleAccessStore
2627
}
2728
}
2829

29-
public class DynamicAuthorizationFilter<TDbContext, TUser> : DynamicAuthorizationFilter<TDbContext, TUser, IdentityRole, string>
30+
public class
31+
DynamicAuthorizationFilter<TDbContext, TUser> : DynamicAuthorizationFilter<TDbContext, TUser, IdentityRole,
32+
string>
3033
where TDbContext : IdentityDbContext<TUser>
3134
where TUser : IdentityUser
3235
{
@@ -40,7 +43,8 @@ public DynamicAuthorizationFilter(
4043
}
4144

4245
public class DynamicAuthorizationFilter<TDbContext, TUser, TRole, TKey>
43-
: DynamicAuthorizationFilter<TDbContext, TUser, TRole, TKey, IdentityUserClaim<TKey>, IdentityUserRole<TKey>, IdentityUserLogin<TKey>, IdentityRoleClaim<TKey>, IdentityUserToken<TKey>>
46+
: DynamicAuthorizationFilter<TDbContext, TUser, TRole, TKey, IdentityUserClaim<TKey>, IdentityUserRole<TKey>,
47+
IdentityUserLogin<TKey>, IdentityRoleClaim<TKey>, IdentityUserToken<TKey>>
4448
where TDbContext : IdentityDbContext<TUser, TRole, TKey>
4549
where TUser : IdentityUser<TKey>
4650
where TRole : IdentityRole<TKey>
@@ -55,8 +59,10 @@ public DynamicAuthorizationFilter(
5559
}
5660
}
5761

58-
public class DynamicAuthorizationFilter<TDbContext, TUser, TRole, TKey, TUserClaim, TUserRole, TUserLogin, TRoleClaim, TUserToken> : IAsyncAuthorizationFilter
59-
where TDbContext : IdentityDbContext<TUser, TRole, TKey, TUserClaim, TUserRole, TUserLogin, TRoleClaim, TUserToken>
62+
public class DynamicAuthorizationFilter<TDbContext, TUser, TRole, TKey, TUserClaim, TUserRole, TUserLogin,
63+
TRoleClaim, TUserToken> : IAsyncAuthorizationFilter
64+
where TDbContext : IdentityDbContext<TUser, TRole, TKey, TUserClaim, TUserRole, TUserLogin, TRoleClaim,
65+
TUserToken>
6066
where TUser : IdentityUser<TKey>
6167
where TRole : IdentityRole<TKey>
6268
where TKey : IEquatable<TKey>
@@ -112,8 +118,6 @@ select role.Id.ToString()
112118
context.Result = new ForbidResult();
113119
}
114120

115-
#if NETCORE3 || NET5
116-
117121
private static bool IsProtectedAction(AuthorizationFilterContext context)
118122
{
119123
var controllerActionDescriptor = context.ActionDescriptor as ControllerActionDescriptor;
@@ -142,33 +146,6 @@ private static bool IsProtectedAction(AuthorizationFilterContext context)
142146
return false;
143147
}
144148

145-
#else
146-
147-
private static bool IsProtectedAction(AuthorizationFilterContext context)
148-
{
149-
if (context.Filters.Any(item => item is IAllowAnonymousFilter))
150-
return false;
151-
152-
var controllerActionDescriptor = context.ActionDescriptor as ControllerActionDescriptor;
153-
if (controllerActionDescriptor == null)
154-
return false;
155-
156-
var controllerTypeInfo = controllerActionDescriptor.ControllerTypeInfo;
157-
var actionMethodInfo = controllerActionDescriptor.MethodInfo;
158-
159-
var authorizeAttribute = controllerTypeInfo.GetCustomAttribute<AuthorizeAttribute>();
160-
if (authorizeAttribute != null)
161-
return true;
162-
163-
authorizeAttribute = actionMethodInfo.GetCustomAttribute<AuthorizeAttribute>();
164-
if (authorizeAttribute != null)
165-
return true;
166-
167-
return false;
168-
}
169-
170-
#endif
171-
172149
private static bool IsUserAuthenticated(AuthorizationFilterContext context)
173150
{
174151
return context.HttpContext.User.Identity.IsAuthenticated;

src/DynamicAuthorization.Mvc.JsonStore/DynamicAuthorization.Mvc.JsonStore.csproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>netstandard2.0;</TargetFrameworks>
5-
<Version>1.2.0</Version>
4+
<TargetFrameworks>netcoreapp3.1;net5.0;net6.0;net7.0</TargetFrameworks>
5+
<Version>1.2.2</Version>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="JsonFlatFileDataStore" Version="2.2.2" />
9+
<PackageReference Include="JsonFlatFileDataStore" Version="2.4.1" />
1010
</ItemGroup>
1111

1212
<ItemGroup>
Lines changed: 38 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,41 @@
11
<?xml version="1.0" encoding="utf-8"?>
2+
23
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
3-
<metadata>
4-
<id>DynamicAuthorization.Mvc.JsonStore</id>
5-
<version>$version$</version>
6-
<authors>Mohsen Esmailpour</authors>
7-
<owners>mo.esmp</owners>
8-
<projectUrl>https://github.com/mo-esmp/DynamicRoleBasedAuthorizationNETCore</projectUrl>
9-
<license type="expression">MIT</license>
10-
<requireLicenseAcceptance>false</requireLicenseAcceptance>
11-
<description>JSON store for DynamicAuthorization</description>
12-
<tags>authorize authorization authentication dynamic-authorization dynamic-authentication identity membership</tags>
13-
<releaseNotes></releaseNotes>
14-
<copyright></copyright>
15-
<dependencies>
16-
<group targetFramework=".NETStandard2.0">
17-
<dependency id="DynamicAuthorization.Mvc.Core" version="1.2.0" exclude="Build,Analyzers" />
18-
<dependency id="JsonFlatFileDataStore" version="2.2.2" exclude="Build,Analyzers" />
19-
</group>
20-
</dependencies>
21-
</metadata>
22-
<files>
23-
<file src="bin\release\netstandard2.0\DynamicAuthorization.Mvc.JsonStore.dll" target="lib/netstandard2.0" />
24-
</files>
4+
<metadata>
5+
<id>DynamicAuthorization.Mvc.JsonStore</id>
6+
<version>$version$</version>
7+
<authors>Mohsen Esmailpour</authors>
8+
<owners>mo.esmp</owners>
9+
<projectUrl>https://github.com/mo-esmp/DynamicRoleBasedAuthorizationNETCore</projectUrl>
10+
<license type="expression">MIT</license>
11+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
12+
<description>JSON store for DynamicAuthorization</description>
13+
<tags>authorize authorization authentication dynamic-authorization dynamic-authentication identity membership</tags>
14+
<releaseNotes></releaseNotes>
15+
<copyright></copyright>
16+
<dependencies>
17+
<group targetFramework=".NETCoreApp3.1">
18+
<dependency id="DynamicAuthorization.Mvc.Core" version="1.2.2" exclude="Build,Analyzers" />
19+
<dependency id="JsonFlatFileDataStore" version="2.4.1" exclude="Build,Analyzers" />
20+
</group>
21+
<group targetFramework=".NET5.0">
22+
<dependency id="DynamicAuthorization.Mvc.Core" version="1.2.2" exclude="Build,Analyzers" />
23+
<dependency id="JsonFlatFileDataStore" version="2.4.1" exclude="Build,Analyzers" />
24+
</group>
25+
<group targetFramework=".NET6.0">
26+
<dependency id="DynamicAuthorization.Mvc.Core" version="1.2.2" exclude="Build,Analyzers" />
27+
<dependency id="JsonFlatFileDataStore" version="2.4.1" exclude="Build,Analyzers" />
28+
</group>
29+
<group targetFramework=".NET7.0">
30+
<dependency id="DynamicAuthorization.Mvc.Core" version="1.2.2" exclude="Build,Analyzers" />
31+
<dependency id="JsonFlatFileDataStore" version="2.4.1" exclude="Build,Analyzers" />
32+
</group>
33+
</dependencies>
34+
</metadata>
35+
<files>
36+
<file src="bin\release\netcoreapp3.1\*.dll" target="lib/netcoreapp3.1" />
37+
<file src="bin\release\net5.0\*.dll" target="lib/net5.0" />
38+
<file src="bin\release\net6.0\*.dll" target="lib/net6.0" />
39+
<file src="bin\release\net7.0\*.dll" target="lib/net7.0" />
40+
</files>
2541
</package>

src/DynamicAuthorization.Mvc.MsSqlServerStore/DynamicAuthorization.Mvc.MsSqlServerStore.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFramework>netstandard2.0</TargetFramework>
5-
<Version>1.2.0</Version>
4+
<TargetFrameworks>netcoreapp3.1;net5.0;net6.0;net7.0</TargetFrameworks>
5+
<Version>1.2.2</Version>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="Microsoft.Data.SqlClient" Version="2.1.1" />
10-
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
9+
<PackageReference Include="Microsoft.Data.SqlClient" Version="5.1.1" />
10+
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
1111
</ItemGroup>
1212

1313
<ItemGroup>

0 commit comments

Comments
 (0)