একটি রেলওয়ে অ্যাপ্লিকেশন "আমাকে মনে রাখবেন" বাস্তবায়ন

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

কিন্তু সেশনগুলি সেশন কুকিজ হিসাবে রেললেটে প্রয়োগ করা হয়, যা ক্রমাগত নয়। আমি তাদের তৈরি তাদের ক্রমাগত করতে পারি:

class ApplicationController < ActionController::Base
  before_filter :update_session_expiration_date

  private

  def update_session_expiration_date
    options = ActionController::Base.session_options
    unless options[:session_expires]
      options[:session_expires] = 1.year.from_now
    end
  end
end

কিন্তু যে একটি হ্যাক মত মনে হয়, যা এই ধরনের সাধারণ কার্যকারিতা জন্য বিস্ময়কর হয়। কোন ভাল উপায় আছে?

সম্পাদনা করুন

গ্যারেথের উত্তরটি বেশ ভাল, কিন্তু আমি এখনও রেইল 2 (এটি এর অনন্য <�কোড> কুকি সেশন স্টোরি </কোড>) এর সাথে পরিচিত কারো কাছ থেকে উত্তর চাই।

0
যোগ সম্পাদিত
মতামত: 1

11 উত্তর

এটা চেষ্টা কর:

  1. Go to Site Actions, Manage Content and Structure.
  2. Click the View menu and change to:
    • Checked Out To Me for drafts that needs to be checked in (unfortunately there is no built-in filter to check for all drafts)
    • All Draft Documents for pages to be published
    • Pending Approval for pages to be approved
  3. Click the 'select all' icon above all of the tick boxes.
  4. Click the Action menu and choose the relevant option.

আমি এমন সব ক্ষেত্রে খুঁজে পেয়েছি যেখানে 'সব নির্বাচন করুন' কাজ করেনি এবং আমি প্রতিটি পৃষ্ঠায় আলাদা আলাদাভাবে যেতে চাই। তবুও, আমার অনুমানের চেয়ে ভাল!

3
যোগ
WSS কি muiltiple পৃষ্ঠাগুলি নির্বাচন এবং ওয়েব ইন্টারফেস থেকে একসঙ্গে প্রকাশ করতে ফাংশন প্রদান করে? আমি মনে করি এটি SharePoint সার্ভারের একটি আদর্শ ফাংশন হওয়া উচিত, কিন্তু আমি এই ফাংশনটি খুঁজে বের করতে পারি না।
যোগ লেখক engtech, উৎস
আমি আমার কম্পিউটার থেকে stsadm.exe খুঁজে পাইনি যা SharePoint Server 2007 এর সাথে ইনস্টল করা হয়েছিল। Stsadm ব্যবহার করার জন্য কি আমাকে কোন অতিরিক্ত সরঞ্জাম ইনস্টল করতে হবে?
যোগ লেখক engtech, উৎস
এই টুলের সমস্যাটি হল, আমাদের কম্পিউটারে বসতে হবে যা কমান্ড লাইন চালানোর জন্য SP সার্ভার চালায়। বাল্ক অনুমোদন সব মুলতুবি আইটেম কোন দূরবর্তী ওয়েব ইন্টারফেস? আমি মনে করি এটি WSS এর একটি আদর্শ বৈশিষ্ট্য হওয়া উচিত, কিন্তু এটি খুঁজে পাওয়া যায় না। :-(
যোগ লেখক engtech, উৎস
স্ক্রিন স্ন্যাপশট -> i35.tinypic.com/oad8pt.png
যোগ লেখক engtech, উৎস
ধন্যবাদ অ্যালেক্স! আমি চেষ্টা করেছি কিন্তু "সমস্ত খসড়া ডকুমেন্টস" একাধিক আইটেমের অনুমোদনের জন্য জমা দেওয়ার কোন উপায় নেই? এখানে একটি স্ক্রিন স্ন্যাপশট, কোন ধারণা কি ভুল?
যোগ লেখক engtech, উৎস
ফায়ারওয়ালের কারণে এখনই আপনার স্ক্রীনশটটি দেখতে পাচ্ছি না। আপনি যে কেসটি পেয়েছেন তা অবশ্যই এমন হতে হবে যেটি "কনসালাইটিস" (সব মিলিয়ে) করা বিষয়বস্তু ও গঠন পৃষ্ঠা থেকে করা যাবে না। আমি নিশ্চিত যে আমি একটি টুল বা ইউটিলিটি দেখেছি যা এই কাজ করে। আমি তাড়াতাড়ি দেখতে এবং এটি আপডেট যদি আমি এটি পাবেন।
যোগ লেখক Alex Angas, উৎস
ঠিক আছে, আমি এসি এর ব্লগে পেয়েছি: andrewconnell.com/blog/articles/ & hellip; যা একটি STSADM কমান্ড যা সাইট/সাইট সংগ্রহের সমস্ত আইটেম প্রকাশ করবে।
যোগ লেখক Alex Angas, উৎস
stsadm C: \ Program Files \ Common Files \ Microsoft Share \ ওয়েব সার্ভার এক্সটেনশানগুলি \ 12 \ বিিন এ থাকে। হ্যাঁ আপনি সার্ভার থেকে চালানোর প্রয়োজন সঠিক বলে এমন একটি CodePlex সমাধান হতে পারে যা আপনার যা প্রয়োজন তা করতে পারে - দেখুন আপনি কী খুঁজতে পারেন! :-)
যোগ লেখক Alex Angas, উৎস

আমি বিশ্বাস করি আপনি "বিষয়বস্তু ও গঠন পরিচালনা করুন" পৃষ্ঠা (সাইট ক্রিয়াকলাপ) ব্যবহার করে একটি বৃহৎ চেক-ইন করতে পারেন।

1
যোগ
আমি পৃষ্ঠা থেকে বেশ কিছু সময় চেষ্টা "বিষয়বস্তু এবং গঠন পরিচালনা", কিন্তু কিভাবে খুঁজে পেতে পারেন না আপনি পদক্ষেপ ভাগ করতে পারে যদি কৃতজ্ঞ
যোগ লেখক engtech, উৎস

Jaap's answer above is right on target. Once you get into the Manage Content and Structure module, you need to navigate through the explorer-like view to the Library where the pages/documents are housed (will show in the right-pane). Once there, mark the checkboxes next to the ones you need to publish/check-in then go up to the action bar above and choose Actions-->Check-In. This will force a check-in of the content. Doing this is especially helpful for those users who bulk upload new documents through the Windows Explorer method and don't want to check-in each document one-by-one.

অ্যালেক্সের মতই এটি করার জন্য কেবলমাত্র সাড়া পাওয়া যায়, SharePoint কখনো কখনো আপনার অনুরোধকে "উপেক্ষা" করবে কারণ প্রয়োজনীয় মেটাডেটা কলাম আছে যাতে সেগুলিকে চেক-ইন করার আগে ভর্তি করতে হবে। আপনি মান আপডেট করতে হবে, তারপর উপরের বাল্ক চেক-ইন ধাপগুলি করবেন।

1
যোগ
আমি শুধু উল্লেখ করলাম যে তারা যে লাইব্রেরিতে সংরক্ষিত থাকে সেগুলির মধ্যে কলামগুলি তৈরি হতে পারে যা ড্রপডাউন তালিকা থেকে প্রবেশ করার আগে বা প্রবেশকার্যটি চেক-ইন করার আগে পাঠ্যটি বা পছন্দ করে। এই কলামগুলি সাইটের কলাম হতে পারে বা এই তালিকাটির জন্য অ্যাডমিন দ্বারা তৈরি হতে পারে।
যোগ লেখক Daniel Broekman, উৎস
কুল, ধন্যবাদ মানুষ!
যোগ লেখক engtech, উৎস
"প্রয়োজনীয় মেটাডাটা কলাম আছে যেগুলি চেক-ইন করার আগে ভরাতে হবে" - আপনি কলামগুলির অর্থ কী?
যোগ লেখক engtech, উৎস

আপনি প্রায় নিশ্চিতভাবে দীর্ঘ কুকুর জুড়ে সময় কুকি সম্প্রসারণ করা উচিত নয়।

যদিও রুবেলগুলির সাথে বিশেষভাবে আচরণ করা হয় না এই নিবন্ধটি আমাকে ব্যাখ্যা করার জন্য 'কিছু মনে করতে' ' সেরা অনুশীলন.

সংক্ষিপ্তভাবে আপনি যদিও উচিত:

  • বড় র্যান্ডম মান গ্রহণ করার জন্য ব্যবহারকারী টেবিলে একটি অতিরিক্ত কলাম যোগ করুন
  • ক্লায়েন্টে একটি দীর্ঘকালীন কুকি সেট করুন যা ব্যবহারকারী আইডি এবং র্যান্ডম মানকে
  • সংযুক্ত করে
  • একটি নতুন সেশন শুরু হলে, id / value cookie এর অস্তিত্বের জন্য পরীক্ষা করুন এবং নতুন ব্যবহারকারীকে যাচাই করে তা প্রমাণ করুন।

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

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

0
যোগ
এই উত্তর বিভ্রান্তিকর হয়। স্থায়ী সেশন নিরাপদ কারণ রেলের দ্বারা প্রদত্ত স্বাক্ষরিত কুকিজ নিরাপদ। এই উত্তরটি প্রস্তাবিত পদ্ধতিটি ব্যবহার করার একমাত্র কারণ রয়েছে, যা "চূড়ান্ত নোট": ম্যানুয়াল এবং স্বয়ংক্রিয় ("আমাকে মনে রাখুন" কুকি) প্রমাণীকরণের মধ্যে পার্থক্য করার জন্য এই পদ্ধতিটি উপযোগী।
যোগ লেখক collimarco, উৎস
আমি এই এক উপর ভিত্তি করে একটি সমাধান সঙ্গে এসেছিলেন। পরিবর্তে একটি নতুন কলাম উপর নির্ভর করে, আমি পরিবর্তে Digest :: SHA512.base64digest (user.password_digest) আমার টোকেন হিসাবে ব্যবহার করছি। password_digest ইতোমধ্যে একটি সুরক্ষিত ভ্যালু আছে, কিন্তু SHA512 এটি আরও সুরক্ষা করবে। আমি তারপর ব্যবহারকারী_আইড স্টোরে সেশন যা সার্ভার পার্শ্ববর্তী করছি, যাতে শুধুমাত্র আমি প্রতি সেকশন একবার SHA512 গণনা করতে হবে। পাসওয়ার্ড পরিবর্তন হলে এটি অকার্যকর হবে।
যোগ লেখক bradlis7, উৎস
jaspan.com/improved_persistent_login_cookie_best_practice এ প্রস্তাবিত নিবন্ধটির উন্নতির দিকে নজর রাখুন যা "সিরিজ" ধারণাটি যোগ করে ভাল নিরাপত্তা. এছাড়াও আপনার বিবরণ সঠিক নয়: 1) কম্পিউটার পরিবর্তন করার সময় আপনার লগইনটি ক্রমাগত অকার্যকর না হওয়ার কারণে আপনার নিবন্ধের লেখক ব্যবহারকারী এবং কুকির মধ্যে এক-থেকে-বহু ম্যাপিং টেবিলের প্রস্তাব দেয় (যেমন, কাজ এবং বাড়ী) 2) র্যান্ডম কুকি আপনি বর্ণনা কি কারণ হবে না (দুই কম্পিউটার সমস্যা)
যোগ লেখক cherouvim, উৎস

আমি রেল জন্য একটি উজ্জ্বল প্রমাণীকরণ সমাধান জন্য Devise যেতে হবে।

0
যোগ

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

এখানে আমি কি করেছি:

  • Session cookie is set to be long-lived (6 months or so)
  • Inside the session store
    • An 'expires on' date that is set to login + 24 hours
    • user id
    • Authenticated = true so I can allow for anonymous user sesssions (not dangerous because of the cookie tamper protection)
  • I add a before_filter in the Application Controller that checks the 'expires on' part of the session.

যখন ব্যবহারকারী "মনে রাখবেন" বক্সটি পরীক্ষা করে তখন আমি সেশন [: এক্সপোজারন] তারিখটি লগইন করতে + 2 সপ্তাহ সেট করেছিলাম। কেউ কুকি চুরি করতে পারেন এবং চিরতরে লগ ইন বা অন্য ব্যবহারকারী হিসাবে মেসেজে রাখুন কারণ রেলের অধিবেশন কুকি ছিঁড়ে-প্রমাণ

0
যোগ
ডিফল্টভাবে সেশন কুকিগুলি ব্রাউজারের সেশন শুধুমাত্র, এবং তাই ব্রাউজারটি বন্ধ হয়ে গেলে কুকি মুছে ফেলা হয়। কিভাবে আপনি আপনার সমাধান এক পদক্ষেপ না, এবং আপনি রেইলস কি সংস্করণ ব্যবহার করছেন? "সেশন কুকি দীর্ঘায়িত (6 মাস বা তাই) হতে সেট করা হয়"
যোগ লেখক Nick, উৎস
আমি সেশন কুকি "ব্রাউজার শুধুমাত্র সেশন" না করার জন্য ডিফল্ট পরিবর্তন। এই উত্তর 4 বছর আগে ফর্ম এবং কনফিগারেশন / ডিফল্ট রেলগুলির নতুন সংস্করণগুলিতে প্রযোজ্য হতে পারে না।
যোগ লেখক Daniel Beardsley, উৎস

30-দিনের ধারাবাহিক সেশন তৈরির এক ব্যক্তি অভিজ্ঞতার একটি চমৎকার লেখা।

সতর্কতা: ব্লগ পোস্ট ২006 থেকে

http://grahamglass.blogs.com/main/2006/05/rails_sessionsr এইচটিএমএল

0
যোগ

Restful_authentication প্লাগইন এর একটি ভাল বাস্তবায়ন আছে:

http://agilewebdevelopment.com/plugins/restful_authentication

0
যোগ

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

0
যোগ

আমি সুপারিশ করব যে আপনি RESTful_Authentication প্লাগের দিকে নজর রাখুন, যার এই একটি বাস্তবায়ন আছে, অথবা শুধু আপনার অটোমেটিকেশন / প্লাগিন ব্যবহার করার জন্য আপনার বাস্তবায়নটি পরিবর্তন করুন। Railscasts এ এই প্লাগ ব্যবহার কিভাবে সম্পর্কে একটি ভাল ব্যাখ্যা আছে:

ট্র্যাভেলসেস # 67 অস্থায়ী_তা প্রমাণীকরণ

এখানে প্লাগইন নিজেই একটি লিঙ্ক

restful_authentication

0
যোগ

এই আমার জন্য একটি কবজ ভালো কাজ:

http://squarewheel.wordpress.com / 2007/11/03 / সেশন-কুকি-মেয়াদ-টাইম-ইন-পাগল /

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

Basallyly, এটি হিসাবে সহজ:

  1. বিক্রেতা / প্লাগইন ডিরেক্টরি সহ একটি ফাইল সহ
  2. শুধুমাত্র এক লাইন ব্যবহার করে অ্যাপ্লিকেশন কন্ট্রোলারের সেশনের মেয়াদকালের মেয়াদ সেট করুন
0
যোগ