Authentication
IdentityServer
ราคา license IdentityServer ครับ credit เทพเรย์
เกี่ยวกับ 5 client applications:
ปกติ client mobile app ที่ user ใช้งานจะมี 1 client id ที่ได้หลักจาก register client application ที่ ID server
ถ้า mobile app เดิมที่ user คนอื่นใช้ ไม่ต้อง register client ใหม่ที่ authorization server แล้ว ใช้ client id เดิมเลย
mobile app ถ้าเป็น application เดียวกัน จะมี client id และ client secret เดียวกัน
ให้ใช้ได้เพียง 5 client application ก็ถือว่าเพียงพอครับ
เพราะโดยทั่วไปเราก็ทำ 1 client application กับ 1 identity server
แต่ถ้าจะวางระบบให้รองรับ client application หลายตัวให้เชื่อมกับ identity server การรองรับ 5 client applications คงไม่พอ
https://www.facebook.com/groups/dotnetthailand/permalink/3675093575909806/
Openiddict - Open Source
Sample: https://github.com/openiddict/openiddict-samples
OrchardCore CMS ใช้ OpenIddict library (Identity, JWT) ในการจัดการกับ Login, Authentication, JWT
ในตัว OrchardCore ได้มี OrchardCore.OpenId module มาให้
ทำให้เราสามารถใช้ JWT ร่วมกับ Angular, React, Vue, Blazor app ได้เลย
ตัวอย่าง video Orchard Core และ OpenId
Orchard Core OpenID Connect Code Flow with Blazing Orchard
https://www.youtube.com/watch?v=C4GYNVlxU30
Orchard Core OpenID Connect Code Flow Api Authorization With A BlazorWASM Client CRUD App
https://www.youtube.com/watch?v=C3-_51u9IlU
Orchard Core OpenID Connect Code Flow API Authorization with a React Client CRUD Application
https://www.youtube.com/watch?v=-MCjLcu-eOE
Orchard Core OpenID Connect Code Flow API Authorization with a Vue.js Client CRUD Application
https://www.youtube.com/watch?v=k1xje-reHIY
OpenID Connect Authorization in a Blazor WebAssembly Application
https://www.youtube.com/watch?v=ZxZJ3BtDAxU
Orchard Core OpenID Connect Code Flow API Authorization with an Angular Client CRUD Application
https://www.youtube.com/watch?v=q687F0ltGJo
ตอนขอ access token จะใช้ URL /connect/token
เราจะไม่เจอ ConnectController และ Token action method
ใน OrchardCMS เนื่องจาก OrchardCore จะไปเรียกใช้ผ่าน OpenIddict ครับ
Link อื่นๆ ที่มีประโยชน์
OpenId VS OAuth
https://stackoverflow.com/a/1087071/1872200
OpenIddict library
https://github.com/openiddict/openiddict-core
Setting up an Authorization Server with OpenIddict - Part 1 - 6
https://dev.to/.../setting-up-an-authorization-server...
https://dev.to/.../setting-up-an-authorization-server...
https://dev.to/.../setting-up-an-authorization-server...
https://dev.to/.../setting-up-an-authorization-server...
https://dev.to/.../setting-up-an-authorization-server...
https://dev.to/.../setting-up-an-authorization-server...
credit admin ป้องครับ Wittawat Karpkrikaew
Other resource
Using the OrchardCore OpenID management feature with an existing OpenIddict deployment
Implementing an OpenIddict Authorization server: Social Login with GitHub
Implementing an OpenIddict Authorization server: A Basic Authorization Server
Creating an OpenID Connect server proxy with OpenIddict 3.0's degraded mode