क्या Google के Chrome ब्राउज़र पर समान-मूल नीति को अक्षम करने का कोई तरीका है?
peter.sh
पेज से लिंक करता है , इसलिए इसे बहुत वैध होना चाहिए।
--disable-web-security --user-data-dir
क्या Google के Chrome ब्राउज़र पर समान-मूल नीति को अक्षम करने का कोई तरीका है?
peter.sh
पेज से लिंक करता है , इसलिए इसे बहुत वैध होना चाहिए।
--disable-web-security --user-data-dir
जवाबों:
क्रोम (या क्रोमियम) को बंद करें और --disable-web-security
तर्क के साथ पुनरारंभ करें । मैंने अभी इसका परीक्षण किया और सत्यापित किया कि मैं "लोकलहोस्ट" (क्रोमियम 5 / ubuntu के तहत परीक्षण) से प्राप्त पृष्ठ में एम्बेडेड src = "http://google.com" के साथ एक iframe की सामग्री का उपयोग कर सकता हूं। मेरे लिए सटीक आदेश था:
नोट: कमांड चलाने से पहले सभी क्रोम इंस्टेंस को मारें
chromium-browser --disable-web-security --user-data-dir="[some directory here]"
ब्राउज़र आपको चेतावनी देगा कि "जब आप पहली बार खुलते हैं तो एक असमर्थित कमांड लाइन का उपयोग कर रहे हैं", जिसे आप अनदेखा कर सकते हैं।
क्रोमियम स्रोत से:
// Don't enforce the same-origin policy. (Used by people testing their sites.)
const wchar_t kDisableWebSecurity[] = L"disable-web-security";
Chrome 48 से पहले, आप बस उपयोग कर सकते हैं:
chromium-browser --disable-web-security
open /Applications/Google\ Chrome.app --args --disable-web-security
--user-data-dir
।
हां। OSX के लिए, टर्मिनल खोलें और चलाएँ:
$ open -a Google\ Chrome --args --disable-web-security --user-data-dir
- OSX पर Chrome 49+ परuser-data-dir आवश्यक है
लिनक्स रन के लिए:
$ google-chrome --disable-web-security
यदि आप AJAX या JSON जैसे देव उद्देश्यों के लिए स्थानीय फ़ाइलों तक पहुँचने का प्रयास कर रहे हैं, तो आप इस ध्वज का भी उपयोग कर सकते हैं।
-–allow-file-access-from-files
Windows के लिए कमांड प्रॉम्प्ट पर जाएं और उस फ़ोल्डर में जाएं जहां Chrome.exe है और टाइप करें
chrome.exe --disable-web-security
उसी मूल नीति को अक्षम करना चाहिए और आपको स्थानीय फ़ाइलों तक पहुंचने की अनुमति देनी चाहिए।
अपडेट: Chrome 22+ के लिए आपको एक त्रुटि संदेश के साथ प्रस्तुत किया जाएगा जो कहता है:
आप एक असमर्थित कमांड-लाइन फ़्लैग का उपयोग कर रहे हैं: -disable-web-security। स्थिरता और सुरक्षा को नुकसान होगा।
हालाँकि आप विकास करते समय उस संदेश को अनदेखा कर सकते हैं।
--disable-web-security
काम नहीं करता है जब तक कि आप स्पष्ट रूप से एक भी नहीं देते हैं --user-data-dir
। यानी OSX /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir=~/ChromeUserData/
।
open -n
। बस चलाते हैं open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/tmp/chrome
। यह आपके मैक पर एक दूसरा क्रोम ऐप इंस्टेंट खोलेगा, और आप उन्हें साइड से इस्तेमाल कर सकते हैं।
विंडोज उपयोगकर्ताओं के लिए:
मेरे विचार में यहाँ स्वीकृत समाधान के साथ समस्या यह है कि यदि आपके पास पहले से क्रोम खुला है और इसे चलाने का प्रयास करें तो यह काम नहीं करेगा।
हालाँकि, इस पर शोध करते समय, मैं सुपर उपयोगकर्ता पर एक पोस्ट भर आया, क्या उसी समय वेब सुरक्षा के साथ और बिना क्रोम चलाना संभव है? ।
मूल रूप से, निम्न कमांड चलाकर (या उसके साथ शॉर्टकट बनाकर और उसी के माध्यम से Chrome को खोलकर)
chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security
आप उसी समय क्रोम का एक नया "असुरक्षित" उदाहरण खोल सकते हैं जब आप अपने अन्य "सुरक्षित" ब्राउज़र इंस्टेंस को खुला रखते हैं और सामान्य रूप से काम करते हैं।
महत्वपूर्ण : C:/Chrome dev session
हर बार जब आप एक विंडो खोलते हैं तो फोल्डर को हटा दें / दूसरी बार --disable-web-security
काम पर नहीं जा रहे हैं। इसलिए आप अपने परिवर्तनों को सहेज नहीं सकते हैं और फिर इसे Chrome के दूसरे असुरक्षित उदाहरण के रूप में फिर से खोल सकते हैं --disable-web-security
।
"C:\..\chrome.exe" --disable-web-security --user-agent="Android" --user-data-dir="C:/temp-chrome-eng" --app="file:///C:/apps/index.html"
open -a Google\ Chrome --args --disable-web-security -–allow-file-access-from-files --user-data-dir="/Users/myuser/temp/chromeData"
, यह सिर्फ मौजूदा क्रोम खिड़की लाभ ध्यान केंद्रित किया, और कुछ नहीं?
open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/chrome_dev_session" --disable-web-security
(आपको पहले अस्थायी फ़ोल्डर बनाने की आवश्यकता हो सकती है)
के लिए विंडोज :
निम्न आदेश निष्पादित करें:
chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security
के लिए मैक :
निम्न आदेश निष्पादित करें:
open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome dev session" --disable-web-security
एक नया वेब सुरक्षा अक्षम क्रोम ब्राउज़र निम्न संदेश के साथ खुलना चाहिए:
Run
।
क्रोम संस्करणों वाले विंडोज़ उपयोगकर्ताओं के लिए 60.0.3112.78 (जिस दिन समाधान का परीक्षण किया गया था और काम किया गया था) और कम से कम आज तक 19.01.2019 (देखें। 71.0.3578.98) । आपको किसी भी क्रोम इंस्टेंस को बंद करने की आवश्यकता नहीं है।
ऐसा नहीं करने के लिए सावधान रहें कि आप के साथ संपर्क किया जा सकता है, क्योंकि भाईचारे के लिए इस कार्यक्रम का उपयोग न करें!
संपादित करें 3: लगता है कि विस्तार अब मौजूद नहीं है ... आम तौर पर इन दिनों कॉर्सेस के आसपास रहने के लिए मैंने एक अलग निर्देशिका के साथ क्रोम का एक और संस्करण स्थापित किया है या मैं https://addons.mozilla.org/en-US/ के साथ फ़ायरफ़ॉक्स का उपयोग करता हूं फ़ायरफ़ॉक्स / addon / cors- हर जगह / बजाय।
EDIT 2: मैं लगातार काम करने के लिए इसे प्राप्त नहीं कर सकता।
EDIT: मैंने दूसरे प्रोजेक्ट के लिए सिर्फ दूसरे दिन का उपयोग करने की कोशिश की और इसने काम करना बंद कर दिया। एक्सटेंशन को अनइंस्टॉल करना और पुन: स्थापित करना इसे निर्धारित करता है (चूक को रीसेट करने के लिए)।
मूल उत्तर:
मैं Chrome को पुनरारंभ करना और अपनी वेब सुरक्षा को अक्षम करना नहीं चाहता था (क्योंकि मैं विकास करते समय ब्राउज़ कर रहा था) और इस Chrome एक्सटेंशन पर ठोकर खाई।
मूल रूप से यह अनुमति-पहुँच-मूल-नियंत्रण जाँच को चालू और बंद करने के लिए थोड़ा टॉगल स्विच है। मेरे लिए पूरी तरह से काम करता है कि मैं क्या कर रहा हूं।
--disable-web-security
उस स्थिति में स्विच से चिपके रहें ।
--allow-file-access-from-files
सभी वेब सुरक्षा को अक्षम करने के बजाय उपयोग कर सकते हैं ।
उपरोक्त समाधानों में से कोई भी वास्तव में काम नहीं कर रहा है। --Disable-वेब-सुरक्षा नहीं रह गया है हाल ही में क्रोम संस्करणों में समर्थित है।
अनुमति-नियंत्रण-अनुमति-उत्पत्ति: * - क्रोम एक्सटेंशन ने समस्या को आंशिक रूप से हल किया। यह केवल तभी काम करता है जब आपका अनुरोध GET विधि का उपयोग कर रहा हो और कोई कस्टम HTTP हेडर न हो। अन्यथा, क्रोम पूर्व-उड़ान अनुरोध के रूप में विकल्प HTTP अनुरोध भेजेगा। यदि सर्वर कोर का समर्थन नहीं करता है, तो यह 404 HTTP स्थिति कोड के साथ जवाब देगा। प्लगइन प्रतिक्रिया HTTP स्थिति कोड को संशोधित नहीं कर सकता है। इसलिए क्रोम इस अनुरोध को अस्वीकार कर देगा। वर्तमान क्रोम एक्सटेंशन एपीआई पर आधारित प्रतिक्रिया HTTP स्थिति कोड को संशोधित करने के लिए क्रोम प्लगइन के लिए कोई रास्ता नहीं है। और आप XHR आरंभ किए गए अनुरोध के लिए पुनर्निर्देशित नहीं कर सकते।
यह निश्चित नहीं है कि क्रोम डेवलपर्स के जीवन को इतना कठिन क्यों बनाता है। यह विकास के उपयोग के लिए भी XSS सुरक्षा जांच को अक्षम करने के सभी संभावित तरीकों को अवरुद्ध करता है जो पूरी तरह से अनावश्यक है।
दिनों के संघर्ष और अनुसंधान के बाद, एक समाधान मेरे लिए पूरी तरह से काम करता है: कॉर्सप्रोक्सी का उपयोग करने के लिए । आपके पास यहां दो विकल्प हैं: 1. [ https://cors-anywhere.herokuapp.com/] का उपयोग करें । 2. स्थानीय बॉक्स में corsproxy स्थापित करें : npm स्थापित -g corsproxy
[जून २३, २०१] पर अपडेट किया गया] हाल ही में मैं एक एसपीए ऐप विकसित कर रहा हूं जिसे फिर से कॉर्सप्रोक्सी का उपयोग करने की आवश्यकता है। लेकिन लगता है कि github पर कोई भी corsproxy मेरी आवश्यकता को पूरा नहीं कर सकता है।
इसलिए मैं नोडज के साथ कॉर्सप्रोक्सी के अपने स्वयं के संस्करण को विकसित करने का निर्णय लेता हूं। यह वास्तव में बहुत सरल है। मैंने इसे गीथूब पर एक गीत के रूप में प्रकाशित किया है। यहाँ स्रोत कोड है जिस्ट: https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10
CORSProxy सर्वर (http पोर्ट 8080): नोड static_server.js 8080 शुरू करने के लिए
प्रॉक्सी तक पहुँचने के लिए: http: // host: 8080 / http: //www.somesite.com
विंडोज के लिए ... अपने डेस्कटॉप पर क्रोम शॉर्टकट बनाएं।
राइट-क्लिक करें> गुण> शॉर्टकट
"लक्ष्य" पथ संपादित करें:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --args --disable-web-security
(जहां कभी आपका क्रोम स्थित है, वहां 'C: .... \ chrome.exe' बदलें)।
एट वॉयला :)
मैक टर्मिनल पर इस कमांड की कोशिश करें-
open -n -a "Google Chrome" --args --user-data-dir=/tmp/temp_chrome_user_data_dir http://localhost:8100/ --disable-web-security
यह अक्षम सुरक्षा के साथ क्रोम का एक और उदाहरण खोलता है और अब कोई कोर मुद्दा नहीं है। इसके अलावा, आपको अन्य क्रोम इंस्टेंसेस को बंद करने की आवश्यकता नहीं है। स्थानीयहोस्ट URL को अपने एक में बदलें।
मुझे लगता है कि ऐसा करने का सबसे अच्छा तरीका है कि आप अपने विंडोज़ डेस्कटॉप पर क्रोम या क्रोम कैनरी शॉर्टकट की नकल करें। इस शॉर्टकट को "NO CORS" नाम दें और फिर उस शॉर्टकट के गुणों को संपादित करें।
लक्ष्य --disable-web-security --user-data-dir="D:/Chrome"
में लक्ष्य पथ के अंत में जोड़ें ।
आपके लक्ष्य को कुछ इस तरह दिखना चाहिए:
अद्यतन: नए झंडे जोड़े गए।
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="D:/Chrome"
वर्तमान नवीनतम क्रोम संस्करण (83.0.4103.61 (आधिकारिक बिल्ड) (64-बिट)) का उपयोग करते हुए, मेरे परीक्षण में काम करने का एकमात्र तरीका नीचे के झंडे का उपयोग करके क्रोम को शुरू करना था ( अपनी पसंद के हिसाब से D: \ temp बदलें ) । यह समाधान क्रोम को परीक्षणों के लिए सैंडबॉक्स के रूप में शुरू करेगा और यह मुख्य क्रोम प्रोफाइल को प्रभावित नहीं करेगा:
-disable-site-आइसोलेशन-ट्रायल - disable-web-security --user-data-dir = "D: \ temp"
विंडोज़ में, स्टार्ट बटन पर क्लिक करें और फिर नीचे कॉपी पेस्ट करें:
chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"
पर चलाया है run
। बहुत बहुत धन्यवाद।
आप "अनुमति-नियंत्रण-अनुमति-उत्पत्ति: *" नामक इस क्रोम प्लगइन का उपयोग कर सकते हैं ... यह एक मृत सरल बनाता है और बहुत अच्छी तरह से काम करता है। इसे यहां देखें: *
सेलेनियम वेबड्राइवर के लिए, आप इस मामले में उपयुक्त तर्क (या "स्विच") के साथ सेलेनियम क्रोम शुरू कर सकते हैं।
@driver = Selenium::WebDriver.for(:Chrome, {
:detach => false,
:switches => ["--disable-web-security"]
})
यह क्रोम प्लगइन मेरे लिए काम करता है: अनुमति-नियंत्रण-अनुमति-उत्पत्ति: * - क्रोम वेब स्टोर
यह मत करो! आप हमलों के लिए अपने खाते खोल रहे हैं । एक बार जब आप ऐसा करते हैं तो कोई भी 3 पार्टी साइट अन्य वेबसाइटों, उन साइटों के लिए अनुरोध जारी करना शुरू कर सकती है जिन्हें आप लॉग इन करते हैं।
इसके बजाय एक स्थानीय सर्वर चलाते हैं। यह शेल / टर्मिनल / कमांडलाइन खोलना और टाइप करना जितना आसान है
cd path/to/files
python -m SimpleHTTPServer
फिर अपने ब्राउज़र की ओर इशारा करते हुए
http://localhost:8000
यदि आपको लगता है कि यह बहुत धीमा है तो इस समाधान पर विचार करें
इस उत्तर को नकारने वाले लोगों को यहाँ जाना चाहिए और इस एक को भी सुसंगत बनाना चाहिए। पता नहीं क्यों मेरा जवाब इतना नीचा है और यहाँ पर एक ही जवाब शीर्ष मतदान जवाब है।
आप हमलों के लिए खुद को खोल रहे हैं । हर एक 3 पार्टी स्क्रिप्ट जो आप अपनी साइट पर दूरस्थ रूप से या स्थानीय रूप से npm के माध्यम से शामिल करते हैं, अब अपना डेटा अपलोड कर सकते हैं या अपनी क्रेडेंशियल्स चोरी कर सकते हैं। आप कुछ ऐसा कर रहे हैं जिसकी आपको कोई जरूरत नहीं है। सुझाए गए समाधान कठिन नहीं है, 30 सेकंड लगते हैं, आपको खुला हमला नहीं छोड़ता है। जब आप बेहतर काम करना चाहते हैं, तो आप खुद को असुरक्षित क्यों चुनेंगे?
सुरक्षा को अक्षम करने के लिए लोगों को बताना अपने दोस्तों को अपने सामने के दरवाजे को खुला छोड़ना और / या डोरमैट के नीचे एक चाबी की तरह है। निश्चित रूप से बाधाओं को कम किया जा सकता है, लेकिन अगर वे परेशान हो जाते हैं, तो मजबूर प्रविष्टि के सबूत के बिना उन्हें बीमा इकट्ठा करने में मुश्किल समय हो सकता है। इसी प्रकार यदि आप सुरक्षा को निष्क्रिय करते हैं बस यही कर रहे हैं अक्षम करने सुरक्षा । जब आप सुरक्षा को अक्षम किए बिना समस्या को हल कर सकते हैं तो ऐसा करना गैर-जिम्मेदाराना है। यदि आप सुरक्षा को अक्षम करने के लिए कुछ कंपनियों पर निकाल नहीं सकते तो मुझे आश्चर्य होगा।
आप बस इस क्रोम एक्सटेंशन Allow-Control-Allow-Origin का उपयोग कर सकते हैं
जैसे आप चाहते हैं क्रॉस-रिसोर्स शेयरिंग को चालू या बंद करने के लिए एक्स्टेंशन के आइकन पर क्लिक करें
केवल MAC USER के लिए
open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security
विंडोज 10 पर, निम्नलिखित काम करेगा।
<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt
ओला कार्ल्ससन के उत्तर के बाद, वास्तव में सबसे अच्छा तरीका एक अलग सत्र में असुरक्षित क्रोम खोलना होगा। इस तरह आपको वर्तमान में खोले गए सभी टैब को बंद करने के बारे में चिंता करने की आवश्यकता नहीं है, और मूल क्रोम सत्र के साथ वेब को सुरक्षित रूप से सर्फ करना जारी रख सकते हैं।
इन बैच फ़ाइलों को सिर्फ आपके लिए विंडोज पर काम करना चाहिए।
आसान उपयोग के लिए इसे Chrome_CORS.bat फ़ाइल में रखें
start "" "c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="c:/_chrome_dev" --disable-web-security
यह एक क्रोम कैनरी के लिए है । Canary_CORS.bat
start "" "c:\Users\%USERNAME%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --user-data-dir="c:/_canary_dev" --disable-web-security
लिनक्स पर - उबंटू, एक साथ चलने के लिए एक सामान्य सत्र और एक असुरक्षित सत्र निम्न कमांड को चलाता है:
google-chrome --user-data-dir=/tmp --disable-web-security
मैक उपयोगकर्ताओं के लिए:
open -a "Google Chrome" --args --disable-web-security --user-data-dir
और क्रोम 48 से पहले, आप बस इस्तेमाल कर सकते हैं:
open -a "Google Chrome" --args --disable-web-security
एक क्रोम एक्सटेंशन है जिसे कॉर्स टॉगल कहा जाता है।
इसे एक्सेस करने और क्रोम में जोड़ने के लिए यहां क्लिक करें ।
इसे जोड़ने के बाद, इसे क्रॉस-डोमेन अनुरोधों की अनुमति देने के लिए स्थिति पर टॉगल करें ।
विंडोज के लिए:
( विंडोज़ 8.1, क्रोम 44.0 का उपयोग करके )
सबसे पहले google chrome को बंद करें।
फिर, कमांड प्रॉम्प्ट खोलें और उस फ़ोल्डर में जाएं जहां 'chrome.exe' है।
( for me: 'chrome.exe' is here "C:\Program Files (x86)\Google\Chrome\Application".
इसलिए मैं प्रकार:
cd C:\Program Files (x86)\Google\Chrome\Application
)
अब टाइप करें: chrome.exe --disable-web-security
क्रोम की एक नई विंडो खुलेगी।
क्रोम शुरू करने के लिए उबंटू में कमांड के नीचे प्रयोग किया जाता है (एक ही मूल नीति को अक्षम करें और अलग मोड में क्रोम खोलें):
nohup google-chrome --disable-web-security --user-data-dir='/tmp' &
विंडोज पर:
1) एक नया शॉर्टकट बनाएं:
2) निम्नलिखित पथ पेस्ट करें:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="c:\temp\chrome"
3) अगले पेज में टाइप करें:
Unsafe Chrome.exe
अब आपके पास डेस्कटॉप पर असुरक्षित क्रोम है, जो कॉर्स अनुप्रयोगों को डीबग करने के लिए उपयोग करता है। आशा है कि यह आलेखीय उत्तर कुछ लोगों की मदद करेगा!
इस पृष्ठ पर जाने का प्रयास करें और अपनी वेबसाइट डोमेन के लिए डोमेन सुरक्षा नीति को अक्षम करें।
chrome://net-internals/#hsts
Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):
।