OAuth là gì?

OAuth là một chuẩn xác thực mở được rất nhiều các website và phần mềm sử dụng.

OpenID là gì?

OpenID là một tiêu chuẩn mở và là một giao thức authen được phân cấp. Được phát triển bởi tổ chức phi lợi nhuận OpenID Foundation, OpenID cho phép user có thể được authen bởi rất nhiều website (Relying Parties hoặc RP) sử dụng service của bên thứ 3

Khác nhau giữa OAuth & OpenID

http://www.codehub.vn/OpenID-va-OAuth-Khac-Nhau-Nhu-The-Nao

OAuth không phải là OpenID

OpenID cũng là một dạng xác thực danh tính dùng nick từ tài khoản xxx để đăng nhập vào trang yyy. Về nguyên tắc thì hai loại này giống nhau nhưng cách hoạt động của chúng thì lại khác nhau. OpenID đòi hỏi người dùng phải cung cấp thông tin cá nhân còn OAuth thì không.

OpenID is a protocol for authentication while OAuth is for authorization

OAuth 2.0 là gì?

OAuth 2.0 Authorization Framework [RFC6749]

OAuth 2.0 Bearer Token Usage [RFC6750]

https://blogs.msdn.microsoft.com/webdev/2016/10/27/bearer-token-authentication-in-asp-net-core/

http://kevinchalet.com/2017/01/30/implementing-simple-token-authentication-in-aspnet-core-with-openiddict/

http://kevinchalet.com/2016/07/13/creating-your-own-openid-connect-server-with-asos-introduction/

http://kevinchalet.com/2016/07/13/creating-your-own-openid-connect-server-with-asos-creating-your-own-authorization-provider/

http://kevinchalet.com/2016/07/13/creating-your-own-openid-connect-server-with-asos-implementing-the-resource-owner-password-credentials-grant/

https://github.com/aspnet-contrib/AspNet.Security.OpenIdConnect.Server

https://github.com/aspnet-contrib/AspNet.Security.OpenIdConnect.Samples/tree/master/samples/

https://github.com/aspnet/Security

Choose type of Authentication & Authorization

https://medium.com/@robert.broeckelmann/when-to-use-which-oauth2-grants-and-oidc-flows-ec6a5c00d864

https://spin.atomicobject.com/2016/05/30/openid-oauth-saml/

Bearer in ASP.NET Core

https://dev.to/samueleresca/developing-token-authentication-using-aspnet-core

https://github.com/samueleresca/Blog.TokenAuthGettingStarted

https://pioneercode.com/post/authentication-in-a-asp-dot-net-core-api-part-1-identity-access-denied

https://pioneercode.com/post/authentication-in-a-asp-dot-net-core-api-part-2-identity-access-granted

https://pioneercode.com/post/authentication-in-an-asp-dot-net-core-api-part-3-json-web-token

Area in ASP.NET Core

https://pioneercode.com/post/creating-areas-in-asp-net-core

Pagination in ASP.NET Core

https://pioneercode.com/post/asp-net-core-mvc-pagination-using-a-tag-helper

https://stackoverflow.com/questions/37708266/bearer-token-authentication-in-asp-net-core

Put app.UseMvc() at the end of your pipeline and it should work:

app.UseJwtBearerAuthentication(new JwtBearerOptions
{
    AutomaticAuthenticate = true,
    AutomaticChallenge = true,
    TokenValidationParameters = tokenValidationParameters,
    AuthenticationScheme = JwtBearerDefaults.AuthenticationScheme,
});

app.UseMvc();

OpenID Connect là gì?

http://openid.net/connect/

Bảo mật nhập môn

Sử dụng Cookie đúng cách để tránh những lỗi bảo mật không đáng có ntn?

Nếu website của bạn sử dụng RESTful API, đừng sử dụng cookie để authorize người dùng mà hãy dùng OAuth hoặc WebToken. Token này được vào Header của mỗi request nên sẽ không bị dính lỗi CRSF nhé.

Bảo mật Cookie

https://toidicodedao.com/2016/10/25/bao-mat-cookie/

Bảo mật cơ bản phần 1

https://toidicodedao.com/2016/09/13/bao-mat-co-ban-phan-1/

Ẩn giấu thông tin hệ thống

https://toidicodedao.com/2016/11/01/an-thong-tin-he-thong/

Quản lý người dùng

https://toidicodedao.com/tag/juno_okyo/

Quản lý người dùng đúng cách

https://toidicodedao.com/2016/12/20/quan-ly-user-dung-cach/

Open Web Application Security Project (OWASP) là gì?

1) SQL Injection

https://toidicodedao.com/2016/11/15/lo-hong-sql-injection-than-thanh/

2) XSS

https://toidicodedao.com/2016/10/18/lo-hong-bao-mat-xss/

3) CSRF

https://toidicodedao.com/2016/11/29/csrf-cu-lua-ngoan-muc/

4) Insecure Direct Object References

https://toidicodedao.com/2016/11/22/lo-hong-bao-mat-insecure-direct-object-references/