API های Binance از پروتکل OAuth 2. 0 برای احراز هویت و مجوز استفاده می کنند. بایننس از سناریوهای رایج OAuth 2. 0 مانند مواردی که برای وب سرور، تک صفحه ای (مبتنی بر مرورگر) و برنامه های تلفن همراه و بومی هستند، پشتیبانی می کند. در این سند، نحوه تعامل برنامه شما با سرور OAuth 2. 0 بایننس برای به دست آوردن اجماع کاربر برای انجام یک درخواست API از طرف کاربر را نشان می دهد.
برای شروع، برنامه شما باید ابتدا مجوزهای مورد نیاز (حوزه) را شناسایی کند. برنامه خود را با Binance Accounts راه اندازی و ثبت کنید و client_id خود را دریافت کنید. در حال حاضر، Binance Login (Oauth2. 0)، اکنون فقط برای شرکای اکوسیستم بسته ارائه شده است. لطفا برای جزئیات بیشتر با تیم تجاری ما تماس بگیرید.
بر اساس نوع درخواست خود، می توانید جریان مجوزهای مختلفی را انتخاب کنید:
- یک برنامه وب لطفاً به جریان کد مجوز مراجعه کنید
- برنامه های کاربردی مبتنی بر مرورگر، و برنامه های تلفن همراه و بومی، لطفاً به PCKE Flow مراجعه کنید.
1. جریان کد مجوز
مرحله 1. کاربران را به درخواست دسترسی Binance و تنظیم پارامترهای مجوز هدایت کنید.#
⚠️ برگشت های کالسکه مثال بالا فقط برای خوانایی هستند و باید در دنیای واقعی حذف شوند و همچنین نمونه های زیر
هنگامی که کاربر را به Binance هدایت می کنید تا اجازه دسترسی به برنامه شما را صادر کند، اولین قدم شما ایجاد درخواست مجوز است.
| مولفه های | شرح |
| پاسخ_نوع | کد ارزش مورد نیاز |
| شناسه مشتری | مورد نیاز شناسه مشتری برنامه شما. |
| redirect_uri | مورد نیاز URL موجود در برنامه وب شما که کاربران پس از مجوز به آنجا هدایت می شوند. این مقدار باید URL کدگذاری شود. |
| حالت | اختیاری نشانه CSRF برای محافظت در برابر حملات CSRF (جعل درخواست بین سایتی). |
| محدوده | فهرست دامنه های مورد نیاز، درخواست های برنامه شما را با کاما ( , ) از هم جدا می کند. |
در اینجا یک نمونه از URL مجوز آمده است:
مرحله 2. Binance از کاربر درخواست می کند تا رضایت#
در این مرحله، کاربر تصمیم می گیرد که آیا به اپلیکیشن شما دسترسی درخواستی را بدهد یا خیر. در این مرحله، بایننس پنجره رضایتی را نمایش می دهد که نام برنامه شما و سرویس های بایننس API را نشان می دهد که با مجوز کاربر اجازه دسترسی به آنها را درخواست می کند. سپس کاربر می تواند با اجازه دسترسی به برنامه شما موافقت کند یا از آن امتناع کند.
برنامه شما در این مرحله نیازی به انجام کاری ندارد زیرا منتظر می ماند تا سرور OAuth 2. 0 بایننس به عقب هدایت شود.
مرحله 3. بایننس به برنامه شما برمی گردد#
اگر کاربر برنامه شما را تأیید کند ، سرور OAuth Binance با یک پارامتر کد مجوز موقت ، بارک را به Redirect_uri شما هدایت می کند.
اگر یک پارامتر حالت را در مرحله 1 مشخص کنید ، پارامتر نیز گنجانده می شود. اگر یک رشته تصادفی ایجاد کنید یا هش یک کوکی یا مقدار دیگری را که وضعیت مشتری را ضبط می کند ، رمزگذاری کنید ، می توانید پاسخ را تأیید کنید که علاوه بر این اطمینان حاصل کنید که درخواست و پاسخ در همان مرورگر سرچشمه می گیرد ، و در برابر حملات مانند سایت متقابل محافظت می کند. درخواست جعل
نمونه ای از تغییر مسیر:
حالت همان مرحله در مرحله 1 است
مرحله 4. کد مجوز مبادله برای تازه کردن و دسترسی به نشانه های#
پس از دریافت درخواست شما کد مجوز ، می تواند کد مجوز را برای یک نشانه دسترسی مبادله کند ، که می تواند با ایجاد یک تماس تلفنی انجام شود:
| پارامتر | شرح |
| Grant_Type | مقدار مورد نیاز مجوز_ کد |
| رمز | کد بازگشت مرحله 3 مورد نیاز |
| شناسه مشتری | شناسه مشتری برنامه خود را ملزم می کند. |
| Client_secret | راز مشتری درخواست شما را ملزم می کند. |
| redirect_uri | مورد نیاز URL موجود در برنامه وب شما که کاربران پس از مجوز به آنجا هدایت می شوند. این مقدار باید URL کدگذاری شود. |
مثال تماس پست:
پس از یک درخواست موفق ، یک پاسخ معتبر Access_Token در پاسخ بازگردانده می شود.
در اینجا یک پاسخ مثال وجود دارد:
2. جریان PKCE
پسوند PKCE از حمله ای که کد مجوز در آن رهگیری شده و برای یک سرویس دسترسی توسط یک مشتری مخرب رد و بدل می شود ، با ارائه سرور مجوز به روشی برای تأیید همان نمونه مشتری که مبادله کد مجوز همان موردی است که جریان را آغاز کرده است ، جلوگیری می کند. بشربرای اطلاعات بیشتر ، به https://tools. ietf.org/html/rfc7636 مراجعه کنید
مرحله 1. کاربران را به درخواست دسترسی Binance و تنظیم پارامترهای مجوز هدایت کنید.#
⚠️ برگشت های کالسکه مثال بالا فقط برای خوانایی هستند و باید در دنیای واقعی حذف شوند و همچنین نمونه های زیر
هنگام هدایت کاربر به Binance برای اجازه دسترسی به برنامه شما ، اولین قدم شما ایجاد درخواست مجوز است. شما نیاز به ایجاد و ذخیره یک PKCE Code_verifier جدید دارید ، همچنین در Step4 در اینجا نمونه ای از JavaScript Generate code_verifier استفاده می شود
| مولفه های | شرح |
| پاسخ_نوع | کد ارزش مورد نیاز |
| شناسه مشتری | مورد نیاز شناسه مشتری برنامه شما. |
| redirect_uri | مورد نیاز URL موجود در برنامه وب شما که کاربران پس از مجوز به آنجا هدایت می شوند. این مقدار باید URL کدگذاری شود. |
| حالت | اختیاری نشانه CSRF برای محافظت در برابر حملات CSRF (جعل درخواست بین سایتی). |
| محدوده | فهرست دامنه های مورد نیاز، درخواست های برنامه شما را با کاما ( , ) از هم جدا می کند. |
| code_challenge | هش مورد نیاز و Base64-Urlencode از code_verifer |
در اینجا نمونه ای از JavaScript تولید Code_Challenge آورده شده است
در اینجا یک نمونه از URL مجوز آمده است:
مرحله 2. Binance از کاربر درخواست می کند تا رضایت#
در این مرحله، کاربر تصمیم می گیرد که آیا به اپلیکیشن شما دسترسی درخواستی را بدهد یا خیر. در این مرحله، بایننس پنجره رضایتی را نمایش می دهد که نام برنامه شما و سرویس های بایننس API را نشان می دهد که با مجوز کاربر اجازه دسترسی به آنها را درخواست می کند. سپس کاربر می تواند با اجازه دسترسی به برنامه شما موافقت کند یا از آن امتناع کند.
برنامه شما در این مرحله نیازی به انجام کاری ندارد زیرا منتظر می ماند تا سرور OAuth 2. 0 بایننس به عقب هدایت شود.
مرحله 3. بایننس به برنامه شما برمی گردد#
اگر کاربر برنامه شما را تأیید کند ، سرور OAuth Binance با یک پارامتر کد مجوز موقت ، بارک را به Redirect_uri شما هدایت می کند.
اگر یک پارامتر حالت را در مرحله 1 مشخص کنید ، پارامتر نیز گنجانده می شود. اگر یک رشته تصادفی ایجاد کنید یا هش یک کوکی یا مقدار دیگری را که وضعیت مشتری را ضبط می کند ، رمزگذاری کنید ، می توانید پاسخ را تأیید کنید که علاوه بر این اطمینان حاصل کنید که درخواست و پاسخ در همان مرورگر سرچشمه می گیرد ، و در برابر حملات مانند سایت متقابل محافظت می کند. درخواست جعل
نمونه ای از تغییر مسیر:
حالت همان مرحله در مرحله 1 است
مرحله 4. کد مجوز مبادله برای تازه کردن و دسترسی به نشانه های#
پس از دریافت درخواست شما کد مجوز ، می تواند کد مجوز را برای یک نشانه دسترسی مبادله کند ، که می تواند با ایجاد یک تماس تلفنی انجام شود:
| پارامتر | شرح |
| Grant_Type | مقدار مورد نیاز مجوز_ کد |
| رمز | کد بازگشت مرحله 3 مورد نیاز |
| شناسه مشتری | شناسه مشتری برنامه خود را ملزم می کند. |
| code_erverifer | به کد مخفی تصادفی ایجاد شده و در مرحله 1 ذخیره شده است |
| redirect_uri | مورد نیاز URL موجود در برنامه وب شما که کاربران پس از مجوز به آنجا هدایت می شوند. این مقدار باید URL کدگذاری شود. |
مثال تماس پست:
پس از یک درخواست موفق ، یک پاسخ معتبر Access_Token در پاسخ بازگردانده می شود.
مدرسه فارکس معامله گر ایرانی...
ما را در سایت مدرسه فارکس معامله گر ایرانی دنبال می کنید
برچسب :
نویسنده : صالح پور مهروز
بازدید : <-PostHit->
تاريخ : سه
شنبه
29 فروردين
1402 ساعت: 20:50