আমি আইআইএস পুলের লোডউজারপ্রোফাইল সেট করলে ঠিক কী ঘটে?


103

আমি নিম্নলিখিত সমস্যার মুখোমুখি হয়েছি।

আমি নিম্নলিখিত কোড চালাচ্ছি

var binaryData = File.ReadAllBytes(pathToPfxFile);
var cert = new X509Certificate2(binaryData, password);

দুটি প্রক্রিয়াতে। প্রক্রিয়াগুলির মধ্যে একটি এর অধীনে চলে LOCAL_SYSTEMএবং সেখানে এই কোডটি সফল হয়। "ব্যবহারকারী" স্থানীয় গোষ্ঠীভুক্ত স্থানীয় ব্যবহারকারী অ্যাকাউন্টের অধীনে আইআইএসের অভ্যন্তরে অন্য একটি চালিত হয় এবং সেখানে আমি নিম্নলিখিত ব্যতিক্রম পাই:

System.Security.Cryptography.CryptographicException
Object was not found.
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromBlob(Byte[] rawData, IntPtr password, UInt32 dwFlags, Boolean persistKeySet, SafeCertContextHandle& pCertCtx)
at System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromBlob(Byte[] rawData, Object password, X509KeyStorageFlags keyStorageFlags)
at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(Byte[] rawData, String password)
//my code here

তাই আমি কিছুটা গুগল করেছিলাম এবং এক ধরণের অনুরূপ প্রশ্নের উত্তর পেয়েছি । আমি LoadUserProfileঅ্যাপ্লিকেশন পুলটির জন্য সক্ষম করার চেষ্টা করেছি এবং এটি এখন কাজ করে।

সমস্যাটি হ'ল আমি সেট করার সময় ঠিক কী ঘটে LoadUserProfileএবং এর পরিণতিগুলি কী হতে পারে তা পাই না । মানে যদি এটি "ভাল" জিনিস হয় তবে এটি কেন ডিফল্টরূপে "চালু" হয় না এবং কেন এটি সব পরে?

আমি LoadUserProfileআইআইএস পুলে সেট করলে ঠিক কী ঘটে এবং এর কোন নেতিবাচক পরিণতি ঘটতে পারে?


6
কেবলমাত্র একটি চিন্তাভাবনা, যদি ব্যবহারকারী প্রোফাইল লোড করা আপনার পক্ষে সমস্যা হয় তবে আপনি নিজের শংসাপত্রের লোডটি এমনটিতে পরিবর্তন করতে পারেন new X509Certificate2(binaryData, password, X509KeyStorageFlags.MachineKeySet)যাতে কোনও ব্যবহারকারী প্রোফাইলের প্রয়োজন হয় না।
vcsjones

1
অ্যাপ্লিকেশনপুল আইডেন্টিটি হিসাবে চলতে থাকলে, আপনি new X509Certificate2(keyFilePath, keyFilePassword, X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.EphemeralKeySet)এমন স্টোরের ব্যক্তিগত কী লিখতে এড়াতে এবং সার্ভারে প্রশাসনিক সুযোগ সুবিধাগুলি প্রয়োজন না ব্যবহার করতে চাইবেন ।
নোট

উত্তর:


117

মানে যদি এটি "ভাল" জিনিস হয় তবে এটি কেন ডিফল্টরূপে "চালু" হয় না এবং কেন এটি সব পরে?

আইআইএস 6 কখনও ব্যবহারকারীর প্রোফাইল লোড করেনি। আমি ধরে নেব আচরণটি সামঞ্জস্য রাখতে ডিফল্টরূপে এটি বন্ধ রয়েছে এবং কোনও প্রশাসককে এটিকে বেছে নিতে হবে।

আমি অ্যাপ্লিকেশন পুলের জন্য LoadUserProfile সক্ষম করার চেষ্টা করেছি এবং এটি এখন কাজ করে।

এটি সম্ভবত সম্ভবত কারণ উইন্ডোজ ক্রিপ্টোগ্রাফিক পরিষেবা সরবরাহকারী ব্যবহারকারীর দোকানে আপনার শংসাপত্রের জন্য একটি কী সংরক্ষণ বা লোড করার চেষ্টা করছিল এবং যেহেতু একটি প্রোফাইল উপলব্ধ ছিল না, তাই কোনও ক্রিপ্টোগ্রাফিক প্রসঙ্গ উপলব্ধ ছিল না। নোট করুন যে Load User Profileসেটিংসটি কেবলমাত্র ব্যবহারকারী অ্যাকাউন্টে প্রযোজ্য। নেটওয়র্ক সার্ভিস এবং অ্যাপ্লিকেশনপুল আইডেন্টিটির মতো পরিষেবা অ্যাকাউন্টগুলিতে বিশেষ পরিচালনা রয়েছে।

আমি আইআইএস পুলে লোডউজারপ্রোফাইল সেট করলে ঠিক কী ঘটে

ভাল, ব্যবহারকারী প্রোফাইল লোড করা হয়। এর মধ্যে তাদের ক্রিপ্টোগ্রাফিক স্টোর, পরিবেশের ভেরিয়েবল যেমন% TEMP% এবং অন্যান্য রয়েছে।

LoadUserProfileঅ্যাপপুলটি শুরু হওয়ার সাথে সাথে এটি শেষ পর্যন্ত কীভাবে সিদ্ধ হয় তাকে আইআইএস বলে।

এর কী নেতিবাচক পরিণতি হতে পারে?

এটি আইআইএস 6 এ চলে এমন একটি অ্যাপের সাথে পিছনের দিকে সামঞ্জস্যতা ভেঙে দিতে পারে যা ব্যবহারকারীর প্রোফাইল লোড করে না। পরিবেশের ভেরিয়েবলগুলি লোড হয়। উদাহরণস্বরূপ, যখন লোড ব্যবহারকারী প্রোফাইলটি সত্য হয়,% TEMP% পরিবেশের পরিবর্তনশীল C:\Users\AccountName\AppData\Local\Temp(উদাহরণস্বরূপ)। যখন মিথ্যা, এটা C:\WINDOWS\Temp


1
অ্যাপ্লিকেশন পুল পরিচয় হিসাবে নেটওয়র্ক সার্ভিসের জন্য +1, তবে অ্যাপ্লিকেশনপুল পরিচয় আমার পক্ষে সফল হয়নি।
ডেভিড ডি সি ই ফ্রেইটাস

3
"এটি আইআইএস 6 এ চলে এমন একটি অ্যাপের সাথে পিছনের দিকে সামঞ্জস্যতা ভেঙে দিতে পারে যা ব্যবহারকারীর প্রোফাইল লোড করে না।" আমি অনুমান করব এটির কার্যকারিতাও রয়েছে (প্রোফাইলটি আসলে লোড করতে হবে; এর অর্থ, উদাহরণস্বরূপ, এইচকেসিইউ রেজিস্ট্রি হাইভ লোড করা) এবং সুরক্ষা (বৃহত্তর সম্ভাব্য ভেক্টর) প্রভাবগুলি।
সেরেন কুকলাউ

1
LoadUserProfile=trueআইআইএসে সেট করা এবং ডিফল্ট টেম্প ফোল্ডার% TEMP% অবস্থান থেকে C:\Users\C:\Users\AccountName\AppData\Local\Tempঅন্য কোথাও পরিবর্তন করা কি সম্ভব ? উদাহরণস্বরূপ "ডি: \ অ্যাপটেম্পডাটা"
মুরালি

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

1
আমি এই কয়েক বছর আগে একটি ব্যাক-এন্ড পরিষেবা তৈরি করেছি যা এক্স 509 ক্লায়েন্ট শংসাপত্র প্রমাণীকরণের দ্বারা সুরক্ষিত একটি রিমোট ওয়েব পরিষেবায় ডেকেছে। যেহেতু ব্যক্তিগত শংসাপত্রগুলি কোনও ব্যবহারকারীর প্রোফাইলে সঞ্চিত থাকে, পরিষেবাটি ইনস্টল করার সময়, আমি পরিষেবাটির লগন অ্যাকাউন্ট হিসাবে টার্গেট সার্ভারে লগইন করতে হয়েছিল, যা একটি ব্যবহারকারী প্রোফাইল তৈরি করে, তারপরে লগন অ্যাকাউন্টের শংসাপত্রের দোকানে ক্লায়েন্ট শংসাপত্র ইনস্টল করুন। এর পরে, ক্লায়েন্ট শংসাপত্র রান সময় লোড হবে।
ক্রেগ বোল্যান্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.