রুবেলে প্রামাণিকতার জন্য সেরা সমাধানটি রেলস [বন্ধ]


84

আমি একটি পূর্ব-নির্মিত সমাধান সন্ধান করছি যা আমি আমার আরআর অ্যাপ্লিকেশনটিতে ব্যবহার করতে পারি। আমি আদর্শভাবে ASP.NET ফর্ম প্রমাণীকরণের অনুরূপ কিছু সন্ধান করছি যা ইমেল বৈধতা, সাইন-আপ নিয়ন্ত্রণ সরবরাহ করে এবং ব্যবহারকারীদের তাদের পাসওয়ার্ডগুলি পুনরায় সেট করতে দেয়। হ্যাঁ, এবং সহজেই আমাকে বর্তমানে অ্যাপ্লিকেশনটিতে লগ ইন করা ব্যবহারকারীকে টানতে দেয়।

আমি ইতিমধ্যে লিখিত টুকরোগুলি সন্ধান করতে শুরু করেছি, তবে আমি এটি সত্যিই বিভ্রান্তিকর বলে মনে করেছি। আমি লগইনজেনারেটর, রেস্টফল অটেনটিকেশন, সলটেডলগিনজেনেটর দেখেছি তবে এমন এক জায়গা বলে মনে হচ্ছে না যার দুর্দান্ত টিউটোরিয়াল আছে বা সেগুলির তুলনা সরবরাহ করে। যদি আমি এখনও সন্ধান না করে এমন কোনও সাইট থাকে বা যদি বেশিরভাগ লোকেরা ব্যবহার করে এমন কোনও ডি-ফ্যাক্টো স্ট্যান্ডার্ড থাকে তবে আমি সাহায্যের হাতটি প্রশংসা করব।

উত্তর:


83

অ্যাথলজিক ব্লকের নতুন বাচ্চা হিসাবে উপস্থিত বলে মনে হচ্ছে এবং এটি বিশ্রামের_অথেন্টিফিকেশন, ব্যবহার করা সহজ, ইত্যাদির পরবর্তী বিবর্তন বলে মনে হচ্ছে

http://github.com/binarylogic/authlogic/tree/master

সম্পাদনা: এখন যে 3 রেলগুলি শেষ হয়েছে, ডিভাইসটিকে ব্লকের নতুন, নতুন বাচ্চা বলে মনে হচ্ছে

https://github.com/plataformatec/devise বা আমি এখনই নিজের নিজস্ব প্রমাণীকরণটি has_secure_passwordরেলগুলি http://railscasts.com/episodes/250-authentication-from-scratch-revised এর সাথে অন্তর্নির্মিত নিয়ে ঘুরছি been

পার্শ্ব দ্রষ্টব্য: বিভিন্ন বিভাগে (গিটহাব পর্যবেক্ষকদের সংখ্যার ভিত্তিতে) বর্তমান সেরা সমাধান সন্ধানের জন্য রুবি টুলবক্স একটি দুর্দান্ত সাইট:

http://ruby-toolbox.com/categories/rails_authentication.html


আমি সত্যই পাশাপাশি লেখক ব্যবহার বিবেচনা করব। এটি বিশ্রামের_আউথের চেয়ে অনেক বেশি পরিষ্কার লেখক পূর্ববর্তী সমস্ত সমাধানগুলি থেকে শিখেছে এবং একটি ক্লিনার, আরও কাস্টমাইজযোগ্য সমাধানে তাদের
পুনরায় বিতরণ করেছে

আমি আপনার পরামর্শ নিয়েছি এবং অথলজিকের সাথে গেলাম, এবং আমি সত্যিই সন্তুষ্ট। সেটআপটিতে কিছুটা সময় লাগতে পারে, এটি কী খুব পরিষ্কার এবং সহজে বোঝা যায়। উত্পন্ন কোডের কোনও ভীতিজনক পাইলস নেই।
গাই সি

হ্যাঁ, এটি সেট আপ করতে বেশি সময় নেয়। আমি আশা করি তিনি সেখানে কিছুটা বিমূর্ততা সরিয়ে নিয়েছেন এবং এটি প্রত্যেকের কাছে ভুলে যাওয়া পাসওয়ার্ডের মতো ইমেল নিশ্চিতকরণ এবং ইমেলের নিশ্চয়তার অন্তর্ভুক্ত জিনিসগুলি দিয়ে পাঠানো হয়েছে। তবে সামগ্রিকভাবে, এটি এখনও বেশ ভাল।
ব্রায়ান আর্মস্ট্রং 21

আমি এটিকে ওপেনআইডি এবং আরপিএক্সনওর সাথে একত্রিত করতে সক্ষম হয়েছি, যা দারুণ রূপান্তরিত হয়েছিল, উদাহরণস্বরূপ: ক্রেতাদের
ব্রায়ান আর্মস্ট্রং

উদাহরণস্বরূপ প্রকল্পটি উঠে আসা এবং চালানো খুব সহজ করে তোলে। কেবল গিটটি সংগ্রহস্থলটিকে ক্লোন করুন, একটি ডাটাবেস.আইএমএল ফাইলে অনুলিপি করুন এবং আপনার সম্পূর্ণরূপে প্রমাণীকরণযোগ্য সাইট প্রস্তুত রয়েছে।
কেসি ওয়াটসন

22

আমি সত্যিই বিশুদ্ধ প্রমাণীকরণের সুপারিশ করব । আমি মনে করি এটি ডি-ফ্যাক্টো স্ট্যান্ডার্ডটি অনেক বেশি।


4
আমি এই দ্বিতীয় হবে। আমাকে সম্প্রতি একটি জটিল জটিল মাল্টি-সাইট প্রমাণীকরণ সিস্টেমটি প্রয়োগ করতে হয়েছিল, যা আমি রেস্টফুলআউথ ডিজাইনের শীর্ষের উপর ভিত্তি করে বাকি অ্যাপ্লিকেশনকে আরএর মতো একই এপিআই সরবরাহ করেছিলাম, অবশ্যই খুব সহজেই এপিআই দিয়ে কাজ করা সহজ স্পষ্টত সহজ কোড পড়ুন :-)
লরি ইয়ং

10

খুব সহজ সমাধানের জন্য ছাড়পত্রের সাথে যান ।

আপনি যদি আরও বিকল্পের সন্ধান করছেন তবে ডিভাইস হ'ল দুর্দান্ত সমাধান। এটি ওয়ার্ডেন ব্যবহার করে যা একটি র্যাক ভিত্তিক প্রমাণীকরণ সিস্টেম।


4
আমি ডিভাইসের পক্ষে কোন কথা বলতে পারি না। আমি এটিকে আমার অ্যাপে সেট আপ করেছি এবং বলতে পারি যে এটি ব্যবহার করা সহজ, কমপক্ষে আমার কাছে আপেক্ষিক নবাগত হিসাবে। আমি এখানে এটির সাথে আমার অভিজ্ঞতা সম্পর্কে ব্লগ করেছি: Therealmattslay.blogspot.com/2010/06/…
ম্যাটস্লে

দুঃখিত ... এখানে সংশোধন করা লিঙ্কটি রয়েছে: mattslay.com/devise-authentication-for-rails
ম্যাটস্লে


3

কেবল একটি নোট, লগইনজেনেটর এবং সলটেডলগিনজেনেটর রেস্টলাল অথেনটিকেশন দ্বারা বরখাস্ত হয়ে গেছে এবং নতুন নতুন রিলিজ রিলিজগুলিতে অসমর্থিত - তাদের কোনও সময় নষ্ট করবেন না, যদিও তারা সে সময় দুর্দান্ত ছিল।


3

আপনি যদি আরও কিছুটা শক্তিশালী কিছু সন্ধান করেন সেক্ষেত্রে বিশুদ্ধ প্রমাণীকরণের মূল কার্যকারিতা বাড়ানোর বিষয়ে একটি দুর্দান্ত টিউটোরিয়াল / আলোচনাও আমি উল্লেখ করতে চাই ।


4
দয়া করে আমাকে ভয়াবহভাবে অসভ্য মনে করবেন না, তবে আমি মনে করি যে ফোরাম এন্ট্রি হ'ল বিশুদ্ধ প্রমাণীকরণের সবচেয়ে খারাপ অংশের একটি উদাহরণ। এখানে প্রচুর অনুপস্থিত বৈশিষ্ট্য রয়েছে এবং একবারে এই বৈশিষ্ট্যগুলি যুক্ত করার জন্য এখানে একটি সুপার দীর্ঘ (এবং বিপরীতমুখী) পদক্ষেপের সেট রয়েছে। ডিআরওয়াইয়ের বিপরীত যাই হোক না কেন, আমি নিশ্চিত এটি এটি। কেবলমাত্র আপনি নিজেকে পুনরাবৃত্তি করছেন না, আপনি শুরু থেকে আরএর জন্য includedচ্ছিকভাবে অন্তর্ভুক্ত করা উচিত এমন স্টাফ অন্তর্ভুক্ত করতে শত শত অন্যান্য বিকাশকারীকে পুনরাবৃত্তি করছেন।
জন মুন্স

3

আমি সত্যিই চিন্তাধারার ছাড়পত্র পছন্দ করছি। খুব সহজ এবং কয়েকটি ভাল হুক রয়েছে এবং এটি টেস্টযোগ্য।


3

AuthLogic মনে হয় যা আপনি এটির জন্য চান। এটি অত্যন্ত কনফিগারযোগ্য এবং যদিও এটি আপনার পক্ষে কোড তৈরি করে না, এটি ব্যবহার করা বেশ সহজ। ইমেল বৈধতা এবং পাসওয়ার্ড পুনরুদ্ধারের জন্য আপনি সম্ভবত :perishable_tokenকলামটি ব্যবহার করতে চান । অ্যাথলজিক এটির যত্ন নেয়, এটি ব্যবহার করার সময় আপনাকে এটি পুনরায় সেট করতে হবে। কীভাবে একটি বেসিক অ্যাপ্লিকেশন সেট আপ করবেন সে সম্পর্কিত তথ্যের জন্য, আপনি অথলজিকের উপর রায়ান বেটস'র রেইলকাস্ট এবং "অফিসিয়াল" উদাহরণ অ্যাপ্লিকেশনটি একবার দেখে নিতে পারেন। অথলজিকের স্রষ্টা বেন জনসন কীভাবে পাসওয়ার্ডগুলিকে পুনরায় সেট করতে পারেন সে সম্পর্কে একটি ব্লগ পোস্ট লিখেছেন।

দুর্ভাগ্যক্রমে আমি একাধিক লিঙ্ক পোস্ট করতে পারি না, তবে রেলকাস্টের লিঙ্কগুলি, পাসওয়ার্ড পুনরায় সেট করার ব্লগ পোস্ট এবং উদাহরণ অ্যাপ্লিকেশনগুলি সবই README এ রয়েছে (README এর জন্য অথলজিক রেপো দেখুন)

আপডেট: এখন আমি আরও লিঙ্ক পোস্ট করতে পারি, তাই আমি আরও কিছু লিঙ্ক করেছি। ইতিমধ্যে লিঙ্কটি যুক্ত করার জন্য আপনাকে মেরিনাইটিম ধন্যবাদ


রেইলকাস্ট লিঙ্ক - Railscasts.com/episodes/160-authlogic
মার্টিনাটিমে

2

restful_authentication একটি শক্তিশালী সরঞ্জাম যা খুব নমনীয় এবং আপনি বক্সের বাইরে যা সন্ধান করছেন তার বেশিরভাগ সরবরাহ করে। যাইহোক, গুপ্তচর একটি দম্পতি:

  1. 'নিয়ন্ত্রণ' পদ বিবেচনা করবেন না। রেলগুলিতে মডেল, ভিউ এবং কন্ট্রোলার 'ওয়েবফর্ম-স্টাইল' এএসপি.এনইটের চেয়ে অনেক বেশি স্বতন্ত্র। প্রতিটি স্তর থেকে আপনি যা চান তা স্বাধীনভাবে কাজ করুন, মিলের জন্য পরীক্ষা / চশমা লিখুন এবং নিশ্চিত করুন যে প্রতিটি স্তরটি আপনার প্রত্যাশাটি করছে।
  2. এমনকি যদি আপনি একটি প্লাগইন ব্যবহার করছেন তবে কোড উত্পন্ন কোডের কিছুটা পড়ার (কমপক্ষে কিছু) বিকল্প নেই। হুডের নীচে কী চলছে সে সম্পর্কে যদি আপনার বড় চিত্রের ধারণা থাকে তবে আপনি ডিবাগিং এবং কাস্টমাইজ করতে আরও সহজ পাবেন।

2

প্লাগইন রেস্টফুল_অথেন্টিফিকেশন এবং অন্যান্য প্লাগইন যা এটি প্রসারিত করে, আপনার প্রয়োজনের সঠিক উত্তর দেয়। গিথুব ডটকমের একটি দ্রুত অনুসন্ধানে প্রচুর টিউটোরিয়াল, উদাহরণ এবং এক্সটেনসিটন প্রকাশ করবে। কেবল এখানে যান:
- http://github.com/search?q=restful_authentication

বেশ কয়েকটি প্রকল্প রয়েছে যা কেবলমাত্র প্রমাণীকরণের অংশগুলির সাথে একটি খালি-হাড়ের রেইল অ্যাপ্লিকেশনের উদাহরণ সরবরাহ করতে বিশ্রামযোগ্য_অথেন্টিফিকেশন ব্যবহার করে।

  1. http://github.com/fudgestudios/bort - বৈশিষ্ট্যযুক্ত একটি বেস রেল অ্যাপ্লিকেশন: RESTful প্রমাণীকরণ
  2. http://github.com/mrflip/restful_authentication_example - কীভাবে বিশ্রামযোগ্য_অথেন্টিকেশন ব্যবহার করবেন তার দুর্দান্ত পরীক্ষার সাথে আরও একটি প্রকল্প
  3. http://github.com/activefx/restful_authentication_tutorial - অন্যান্য কিছু প্লাগইন বান্ডিল সহ উপরেও একই।
  4. http://railscasts.com/episodes/67-restful-authentication - বিশ্রাম_আথেনটিকেশন ব্যাখ্যা করার জন্য একটি দুর্দান্ত স্ক্রিনকাস্ট

আপনি মাথা এবং লেজ সন্ধান শুরু করতে এই তথ্য যথেষ্ট হতে হবে ... শুভকামনা।


2

কেবল এটি আপডেট করা হচ্ছে: রায়ান বাটসের ' রেলকাস্ট # 250 স্ক্র্যাচ থেকে একটি প্রমাণীকরণ সিস্টেম তৈরি করা দেখায় ....


4
যদিও একটি বেসপোক লেখক সিস্টেমে রেলকাস্ট দুর্দান্ত (এবং আমি একই ধরণের সিস্টেম একাধিকবার প্রয়োগ করেছি), এটি কোনও উপায়ে প্রাক-বিল্ট নেই এবং ডিভাইসের মতো সেটআপের মতো সমস্ত বৈশিষ্ট্য সরবরাহ করে না।
কলিন আর

সম্মত, কিন্তু ডিভাইস বেশ ভারী হতে পারে। আমার মতে, ডিভাইস যে বৈশিষ্ট্যগুলি সরবরাহ করে সেগুলির বৈশিষ্ট্যগুলি আপনি যদি পুরোপুরি গ্রহণ না করেন তবে আপনার নিজের লেখার ব্যবস্থা তৈরির মাধ্যমে অনেক সময় এবং হৃদয়-ব্যথা বাঁচানো যায়।
অ্যাডাম জোনাস

4
আমি একটি পূর্ব-নির্মিত সমাধান সন্ধান করছি যা আমি আমার আরআর অ্যাপ্লিকেশনটিতে ব্যবহার করতে পারি।
কলিন আর

0

ক্লিয়ারেন্সের জন্য অন্য একটি ভোট - সম্ভবত কাস্টমাইজযোগ্য বা লেখক হিসাবে 'ইন' হিসাবে নয়, তবে কেবল এটি জায়গায় ফেলে দিতে এবং যেতে সক্ষম হওয়ার দিক থেকে এটি অবশ্যই লক্ষ্য করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.