جزئیات محصول

دانلود کدپیاده‌سازی سیستم ورود با استفاده از OAuth با ASP.NET Web Form

دانلود کدپیاده‌سازی سیستم ورود با استفاده از OAuth با ASP.NET Web Form

قیمت: 35,000 تومان

خرید فایل


مشاهده پیشنمایش

پیشنمایش برای محصولاتی که نیاز به نمایش دمو دارند می باشد

 پیاده‌سازی سیستم ورود با استفاده از OAuth در **ASP.NET Web Forms** به کاربران این امکان را می‌دهد که با استفاده از حساب‌های موجود خود در شبکه‌های اجتماعی یا خدمات دیگر (مانند Google، Facebook و غیره) وارد سیستم شوند. این روند شامل مراحل زیر است:

 
### مراحل پیاده‌سازی
 
#### 1. ثبت برنامه در OAuth Provider
 
قبل از هر چیز، شما باید یک برنامه را در ارائه‌دهنده OAuth (مانند Google یا Facebook) ثبت کنید. در حین ثبت‌نام، شما یک `Client ID` و `Client Secret` دریافت خواهید کرد که برای احراز هویت درخواست‌ها استفاده می‌شود.
 
#### 2. افزودن پکیج‌های لازم
 
شما باید پکیج‌های NuGet مربوط به OAuth را به پروژه خود اضافه کنید. برای Google، می‌توانید از پکیج زیر استفاده کنید:
 
```
Install-Package Microsoft.Owin.Security.Google
```
 
و برای Facebook:
 
```
Install-Package Microsoft.Owin.Security.Facebook
```
 
#### 3. تنظیمات OWIN
 
شما باید OWIN را پیکربندی کنید. ابتدا، یک فایل جدید به نام `Startup.cs` در پروژه خود ایجاد کنید و کد زیر را به آن اضافه کنید:
 
```csharp
using Microsoft.Owin;
using Microsoft.Owin.Security.Cookies;
using Microsoft.Owin.Security.Google;
using Microsoft.Owin.Security.Facebook;
using Owin;
 
[assembly: OwinStartup(typeof(YourNamespace.Startup))]
 
namespace YourNamespace
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = "Application",
                LoginPath = new PathString("/Login.aspx"),
            });
 
            app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions()
            {
                ClientId = "YOUR_GOOGLE_CLIENT_ID",
                ClientSecret = "YOUR_GOOGLE_CLIENT_SECRET",
                CallbackPath = new PathString("/signin-google")
            });
 
            app.UseFacebookAuthentication(new FacebookAuthenticationOptions()
            {
                AppId = "YOUR_FACEBOOK_APP_ID",
                AppSecret = "YOUR_FACEBOOK_APP_SECRET",
                CallbackPath = new PathString("/signin-facebook")
            });
        }
    }
}
```
 
### 4. ایجاد صفحه ورود
 
حالا یک صفحه جدید به نام `Login.aspx` ایجاد کنید و کد زیر را به آن اضافه کنید:
 
```html
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Login.aspx.cs" Inherits="YourNamespace.Login" %>
 
    Login
   
   
       
           

Login

           
           
       
   
```
 
### 5. کد پشت (`Code-Behind`)
 
در فایل `Login.aspx.cs`، کد زیر را اضافه کنید:
 
```csharp
using Microsoft.Owin.Security;
using System;
using System.Web;
using System.Web.UI;
 
namespace YourNamespace
{
    public partial class Login : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // هیچ بارگذاری خاصی در اینجا نیاز نیست.
        }
 
        protected void btnGoogle_Click(object sender, EventArgs e)
        {
            HttpContext.Current.GetOwinContext().Authentication.Challenge(new AuthenticationProperties
            {
                RedirectUri = "/Default.aspx" // صفحه‌ای که بعد از ورود کاربر به آنجا هدایت می‌شود.
            }, "Google");
        }
 
        protected void btnFacebook_Click(object sender, EventArgs e)
        {
            HttpContext.Current.GetOwinContext().Authentication.Challenge(new AuthenticationProperties
            {
                RedirectUri = "/Default.aspx" // صفحه‌ای که بعد از ورود کاربر به آنجا هدایت می‌شود.
            }, "Facebook");
        }
    }
}
```
 
### 6. ایجاد صفحه اصلی
 
حالا یک صفحه اصلی به نام `Default.aspx` ایجاد کنید و کد زیر را به آن اضافه کنید:
 
```html
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="YourNamespace.Default" %>
 
    Home
   
   
       
           

Welcome

           
           
       
   
```
 
### 7. کد پشت (`Code-Behind`) برای صفحه اصلی
 
در فایل `Default.aspx.cs`، کد زیر را اضافه کنید:
 
```csharp
using System;
using System.Web;
using System.Web.UI;
 
namespace YourNamespace
{
    public partial class Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (User.Identity.IsAuthenticated)
            {
                lblUser.Text = $"Hello, {User.Identity.Name}!";
            }
            else
            {
                Response.Redirect("Login.aspx");
            }
        }
 
        protected void btnLogout_Click(object sender, EventArgs e)
        {
            HttpContext.Current.GetOwinContext().Authentication.SignOut();
            Response.Redirect("Login.aspx");
        }
    }
}
```
 
### 8. نتیجه‌گیری
 
با این پیاده‌سازی، شما یک سیستم ورود به سیستم با استفاده از OAuth با **ASP.NET Web Forms** ایجاد کرده‌اید. کاربران می‌توانند با حساب‌های Google یا Facebook خود وارد سیستم شوند.
 
### 9. نکات مهم
 
- **درست کردن آدرس‌های Callback**: در هنگام ثبت‌نام برنامه در Google و Facebook، آدرس‌های Callback را به درستی تنظیم کنید تا کاربران بعد از ورود به سیستم به درستی هدایت شوند.
- **محافظت از اطلاعات کاربر**: مطمئن شوید که اطلاعات کاربر را به درستی مدیریت کرده و آن‌ها را ایمن نگه دارید.
 
اگر سوال یا نیاز به توضیحات بیشتری دارید، خوشحال می‌شوم کمک کنم!
| صفحه قابل مشاهده: دانلود کدپیاده‌سازی سیستم ورود با استفاده از OAuth با ASP.NET Web Form می‌باشد