- 말줄임표시
- asp.net dropdownlist
- javascript 바코드 생성
- ViewBag
- 파일업로드 체크
- 404에러페이지
- 바코드 스캔하기
- TempData
- Mac Oracle
- javascript redirection
- jquery 바코드생성
- 하드 마이그레이션
- 파일업로드 유효성체크
- SSD 복사
- javascript 유효성체크
- 타임피커
- php 캐쉬제거
- 하드 윈도우 복사
- 바코드 생성하기
- asp.net Select
- 맥 오라클설치
- javascript 바코드스캔
- 강제이동
- django 엑셀불러오기
- jquery 바코드
- ASP.Net Core 404
- XSS방어
- XSS PHP
- ViewData
- asp.net core Select
웹개발자의 기지개
[ASP.Net Core] Authenticate 와 Authorize User - 사용자 인증과 권한 - Identity Entity Framework Core 본문
[ASP.Net Core] Authenticate 와 Authorize User - 사용자 인증과 권한 - Identity Entity Framework Core
http://portfolio.wonpaper.net 2023. 2. 28. 05:50기존에 포스팅했던
[ASP.Net Core] Identity Entity FrameworkCore - 회원가입/로그인/로그아웃 예제
Identity Entity FrameworkCore - 회원가입/로그인/로그아웃 예제 와 연장선 상에 있는 내용이다.
어렵지 않고 아주 간단한내용이다.
로그인처리하면 Authenticate 인증이 되었다는 것이고, Authorize 는 특정한 액션메소드나 컨트롤을 이용할 수 있는 권한을 부여한다는 것이다.
상기 포스팅과 비교하면서 아래 소스내용을 참고 하면 이해가 될 것이다.
[ /Controllers/HomeController.cs ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
using IdentityMVCExam.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Authorization.Infrastructure;
using Microsoft.AspNetCore.Mvc;
using System.Diagnostics;
namespace IdentityMVCExam.Controllers
{
public class HomeController : Controller
{
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
// 권한없이 모든 사람 이용가능
[AllowAnonymous]
public IActionResult Index()
{
return View();
}
// Manager 권한이 있는 사람만
[Authorize(Roles = "Manager")]
public IActionResult Privacy()
{
return View();
}
}
}
|
cs |
위의 소스를 보면 [AllowAnonymous] 처럼 누구나 접근가능한 권한을 준다는 것이고,
[Authorize(Roles = "Manager")] 는 해당 액션 메소드에 접근시에는 Manager Role 역할이 있어야 실행이 가능하다는 말이다. 만약 이러한 권한이 없다면 앞전의 포스팅 소스에 명기되어 있던
[Program.cs] 내에
builder.Services.ConfigureApplicationCookie(opt => {
opt.LoginPath = "/Security/SignIn"; // 로그인 처리페이지
opt.AccessDeniedPath = "/Security/AccessDenied"; // 접근권한 없는 User가 접근할때 처리페이지
});
처럼 로그인 페이지로 자동 이동된다.
그리고, 이러한 Authorize 는 컨트롤러 제목에도 Annotation 시킬수 있다.
'ASP.NET > ASP.NET Core' 카테고리의 다른 글
[ASP.Net Core] PC인지 모바일인지 체크하기 (0) | 2023.03.19 |
---|---|
[ASP.Net Core] 라우팅 Custom 지정하기 (Route) (0) | 2023.03.06 |
[ASP.Net Core] Identity Entity FrameworkCore - 회원가입/로그인/로그아웃 예제 (2) | 2023.02.28 |
[ASP.Net Core] 배포하기(publish), 게시하기 - NuGet.Config가 올바른 XML이 아닙니다. 경로: 'C:\Users\Administrator\AppData\Roaming\NuGet\NuGet.Config' (0) | 2023.02.22 |
[ASP.Net Core] 단순한 Select 박스 구현하기 (0) | 2023.02.17 |