আপনার রেলস অ্যাপ্লিকেশনটিকে কোনও আই-ফ্রেমে এম্বেড করার এবং সমস্যাগুলিতে চলতে দেওয়ার জন্য কীভাবে এই লিঙ্কটি পাওয়া যায় তার জন্য আমি এখানে একটি আপডেট উত্তর অন্তর্ভুক্ত করতে চেয়েছিলাম।
এটি লিখেছেন, মে 2820, এক্স-ফ্রেম-বিকল্প পরিবর্তনগুলি সম্ভবত আপনার সমস্যার সেরা সমাধান নয়। "ALLOW-FROM" বিকল্পটি সমস্ত বড় ব্রাউজার দ্বারা সম্পূর্ণরূপে অনুমোদিত নয়।
আধুনিক সমাধানটি একটি বিষয়বস্তু-সুরক্ষা-নীতি বাস্তবায়ন এবং একটি 'ফ্রেম_অ্যানস্টোরস' নীতি সেট করা। 'ফ্রেম_অ্যানস্টোরস' কী কী ডোমেনগুলি আপনার অ্যাপ্লিকেশনটিকে আইফ্রেমে এম্বেড করতে পারে তা নির্ধারণ করে। এটি বর্তমানে প্রধান ব্রাউজারগুলির দ্বারা সমর্থিত এবং আপনার এক্স-ফ্রেম-বিকল্পগুলিকে ওভাররাইড করে। এটি আপনাকে ক্লিক জ্যাকিং (যা এক্স-ফ্রেম-বিকল্পগুলি মূলত মূলত এটি হ্রাস করার আগে সাহায্য করার উদ্দেশ্যে তৈরি হয়েছিল) প্রতিরোধ করতে এবং আধুনিক অ্যাপ্লিকেশনটিতে আপনার অ্যাপ্লিকেশনটিকে লকড করার অনুমতি দেয়।
আপনি ইনিশিয়ালাইজারে (নীচে উদাহরণস্বরূপ) 5.2 কিলের সাথে একটি সামগ্রী-সুরক্ষা-নীতি সেট আপ করতে পারেন এবং << 5.2 জন্য আপনি সুরক্ষিত শিরোনাম রত্নের মতো রত্ন ব্যবহার করতে পারেন: https://github.com/github/secure_headers
আপনি যদি চান তবে একটি নিয়ামক / অ্যাকশন ভিত্তিতে নীতি সম্পর্কিত স্পেসিফিকেশনও ওভাররাইড করতে পারেন।
উন্নত সুরক্ষা সুরক্ষার জন্য সামগ্রী-সুরক্ষা-নীতিগুলি দুর্দান্ত। রেল ডক্সে আপনি কনফিগার করতে পারেন এমন সমস্ত জিনিস দেখুন: https://edgeguides.rubyonrails.org/security.html
বিষয়বস্তু-সুরক্ষা-নীতিমালার জন্য একটি রেলগুলি 5.2 উদাহরণ:
Rails.application.config.content_security_policy do |policy|
policy.frame_ancestors :self, 'some_website_that_embeds_your_app.com'
end
কোনও নীতিতে নিয়ামক নির্দিষ্ট পরিবর্তনের উদাহরণ:
class PostsController < ApplicationController
content_security_policy do |p|
p.frame_ancestors :self, 'some_other_website_that_can_embed_posts.com'
end
end