سلام خدمت دوستان
سوالم این هستش که در مجموع چند روش برای احراز هویت در دات نت و مخصوصا برنامه های وب وجود داره. من اصطلاحات و عبارات زیر را که در آموزش های مختلف برخورد داشتم رو عنوان میکنم و لطفا اگر کسی اطلاعاتی داره پست کنه. کدام منسوخ شده و کدام تمامی این روش ها را پوشش میده و در مجموع کدام را برای یادگیری دنبال کنم:
1- Identity
2- OAuth2
3- OpenID
4- IdentityServer
5- JWT
6- FAPI
7- Mutual TLS
8- DPoP
9- JARM
10- JAR
11- PAR
12- SSO
13- SAML
14- LDAP
آنچه خودم متوجه شدم:
1- Identity: کتابخانه دات نت که برای احراز هویت کاربران براساس نام کاربر و پسورد میشه تمام مکانیزم ها را در یک برنامه پیاده سازی کرد.
2- OpenID: یک پوشش سطح بالاتر برای OAuth هستش. البته اونطور که متوجه شدم بهتره که OpenId را یاد بگیرم.
3- IdentityServer: برای ایجاد سرویس احراز هویت واحد برای چندین نرم افزار می باشد. اما اینکه درون این سیستم از کدام روش باید استفاده بشه اطلاعاتی ندارم.
4- JWT: احراز هویت با استفاده از Token که Clientهای مختلف با استفاده از دستگاه های مختلف میتونند در زمان استفاده از یک برنامه براحتی احراز هویت بشن.
سوال:
1- سایر اصطلاحاتی را که نوشتم نمیدانم چه کاربردی دارند.
2- برای یک برنامه Asp Net Core 6 که بصورت Razor Page نوشته شده کدام روش برای احراز هویت بهتره؟
3- اگر قرار باشه یک پروژه API داشته باشم و UI برنامه را به Asp Net Core و Razor Page بنویسم آیا JWT گزینه بهتریه؟
4- آیا اصلا نیازی به پیاده سازی IdentityServer برای برنامه ضروریه؟ حتی اگر برنامه تجاری و بزرگ باشه ولی در انتها یک Web Application باشه؟
ممنون میشم اگر دوستان راهنمایی کنند. سپساس
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)