جستجو در تالارهای گفتگو
در حال نمایش نتایج برای برچسب های 'توکن'.
2 نتیجه پیدا شد
-
با سلام و عرض ادب. من یک rest api دارم که پس از لاگین به من یک access token ارسال می کنه که من می تونم برای درخواست های بعدی از اون استفاده کنم. حالا می خوام بدونم کلاینت خودم (تحت Qml xmlhttprequest) رو چطور پیاده سازی کنم که پس از اولین ورود توسط یوزر و پسوردی که از کاربر گرفتم برای دفعات بعدی نیاز به گرفتن یوزر و پسورد نباشه. مانند اپلیکیشن های تاکسی آنلاین و... که یک بار فقط مشخصات رو از کاربر می پرسند. اگر بخوام یوزر و پسورد یا access token رو در اپلیکیشن ذخیره کنم احتمال decompile یا چیزی شبیه به این هست که موجب افشا شدن این اطلاعات میشه. (آیا Qml Settings امنیت این کار رو تامین می کنه؟) لطفا راه کار رو بفرمایید. تشکر
- 4 پاسخ
-
- توکن
- access tooken
- (و 6 مورد دیگر)
-
ما به شما پیشنهاد میکنیم که دربارهٔ انتقال ایمن اطلاعات توسط JSon Web Token بیشتر بدانید. یک وبتوکت از نوع جیسان (JWT) یک استاندارد باز از (RFC7519) میباشد که که یک روش جمع و جور و خود مختار را برای ایمنی اطلاعات بین ترنسفر اطلاعات در JSon را تعریف میکند. این اطلاعات به عنوان اطلاعات مورد اعتماد قابل تایید میباشند زیرا آنها امضای دیجیتالی شدهاند. تراکنشهای مربوط به JWT را میتوان با استفاده از یک کلید مخفی عمومی/خصوصی امضا کرد. ساختار وبتوکن جیسان چکونه است؟ Header Payload Signature هدر یا عنوان (Header) معمولاً شامل دو قسمت است: نوع توکن، که JWT است، و الگوریتم هَش کننده که استفاده میشود. مانند الگوریتمهای HMAC ،SHA256 و یا RSA. برای مثال: { "alg": "HS256", "typ": "JWT" } سپس، این جیسان که از نوع Base64-URL کد نگاری شده است قسمت اول JWT را تشکیل میدهد. بخش دوم Payload قسمت دوم توکن ها، payload است که اظهارات را در برمیگیرد. اظهارات ثبت شده (Registered claims): اینها مجموعهای از اظهارات از پیش تعریف شده است که اجباری در به کار گیری آنها نیست، اما توصیه میشود تا مجموعهٔ مفیدی را ارائه دهد. اظهارات عمومی(Public claims): اینها میتوانند توسط کسانی که از JWT استفاده میکنند تعریف کنند. اما برای جلوگیری از برخورد بهتر است تعریف شوند. اظهارات خصوصی(Private claims): این اظهارات سفارشی ایجاد شده برای به اشتراک گذاشتن اطلاعات بین طرفین است که توافق بر روی استفاده از آنها میباشد نه اظهارات ثبت شده یا عمومی. یک مثال از payload به صورت زیر نشان داده شده است: { "sub": "1234567890", "name": "John Doe", "admin": true } امضاء برای ایجاد بخش امضاء شما باید هدر کُد شده را جهت امضا شدن دریافت کنید که شامل payload رمزینه شده، یک کد خاص و الگوریتم مشخص شدهای میباشد. HMACSHA256( base64UrlEncode(header) + "." + base64UrlEncode(payload), secret) سپس، شما باید همهٔ اینها را باهم دیگر ترکیب کنید. نمونهٔ زیر یک JWT را نشان میدهد که حاوی هدر قبلی و payload رمز شده است که در نهایت آن با یک رمز ویژه امضاء شده است. اگر شما میخواهید تا با JWT بیبشتر آشنا شوید و این مفاهیم را در عمل اجرا کنید، میتوانید از jwt.io استفاده کنید.
-
- برنامهنویسی
- jwt
- (و 4 مورد دیگر)