ক্রিপ্টোগ্রাফিকএক্সেপশন 'কীসেটের অস্তিত্ব নেই', তবে কেবল ডাব্লুসিএফের মাধ্যমে


157

আমার কিছু কোড রয়েছে যা একটি তৃতীয় পক্ষের ওয়েব পরিষেবাতে কল করে যা X.509 শংসাপত্র ব্যবহার করে সুরক্ষিত।

আমি যদি কোডটি সরাসরি কল করি (ইউনিট পরীক্ষা ব্যবহার করে) এটি কোনও সমস্যা ছাড়াই কাজ করে।

মোতায়েনের সময়, এই কোডটি ডাব্লুসিএফ পরিষেবার মাধ্যমে কল করা হবে। আমি একটি দ্বিতীয় ইউনিট পরীক্ষা যুক্ত করেছি যা ডাব্লুসিএফ পরিষেবাটিকে কল করে, তবে এটি তৃতীয় পক্ষের ওয়েব পরিষেবাতে যখন কোনও পদ্ধতিতে কল করি তখন এটি একটি CryptographicException, বার্তার সাথে ব্যর্থ হয় "Keyset does not exist"

আমি অনুমান করি যে এটি আমার ডাব্লুসিএফ পরিষেবাটি আমার কাছে অন্য কোনও ব্যবহারকারীকে ব্যবহার করে তৃতীয় পক্ষের ওয়েব পরিষেবা কল করার চেষ্টা করবে।

কেউ কি এই বিষয়ে কোনও অতিরিক্ত আলো ফেলতে পারেন?

উত্তর:


168

এটি শংসাপত্রটিতে সম্ভবত কোনও অনুমতি সমস্যা হবে।

ইউনিট পরীক্ষা চালানোর সময় আপনি নিজের ব্যবহারকারী প্রসঙ্গে যাঁরা ( ক্লায়েন্ট শংসাপত্রটি কী স্টোর রয়েছে তার উপর নির্ভর করে ) সেই শংসাপত্রের ব্যক্তিগত কীতে অ্যাক্সেস পাবেন।

তবে যদি আপনার ডাব্লুসিএফ পরিষেবাটি আইআইএসের অধীনে হোস্ট করা থাকে, বা উইন্ডোজ পরিষেবা হিসাবে সম্ভবত এটি কোনও পরিষেবা অ্যাকাউন্টের অধীনে চলবে (নেটওয়ার্ক পরিষেবা, স্থানীয় পরিষেবা বা অন্য কোনও বিধিনিষেধযুক্ত অ্যাকাউন্ট)।

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


ক্যালক চালানো আমাকে সম্পূর্ণ ভিন্ন সমস্যার জন্য ধন্যবাদ সাহায্য করেছে
জন

3
প্রশাসক হিসাবে সমস্যাটি শেষ হয়ে গেছে হিসাবে আমি আমার অ্যাপ্লিকেশন পরিচালনা করি।
ডেরেক

1
এমএসডিএন ডকুমেন্টেশনের জন্য +1 এবং তালিকাভুক্ত পদক্ষেপগুলি এমনকি একটি ওয়েব অ্যাপ্লিকেশনটিতে প্রযোজ্য
নরেন

শংসাপত্রের সুরক্ষা অনুমতিগুলিতে "নেটওয়র্ক সার্ভিস" যুক্ত করা এটি আমার জন্য সমাধান হয়েছে, ধন্যবাদ!
OpMt

276

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

  1. শুরু -> চালান -> এমএমসি
  2. ফাইল -> স্ন্যাপিন যুক্ত / সরান
  3. শংসাপত্রগুলি স্ন্যাপ ইন যুক্ত করুন
  4. কম্পিউটার অ্যাকাউন্ট নির্বাচন করুন, তারপরে হিট করুন
  5. স্থানীয় কম্পিউটার নির্বাচন করুন (ডিফল্ট), তারপরে সমাপ্তি ক্লিক করুন
  6. কনসোল রুট থেকে বাম প্যানেলে শংসাপত্রগুলি (লোকাল কম্পিউটার) -> ব্যক্তিগত -> শংসাপত্রগুলিতে নেভিগেট করুন
  7. আপনার শংসাপত্রটি সম্ভবত এখানেই থাকবে।
  8. আপনার শংসাপত্র -> সমস্ত টাস্ক -> ব্যক্তিগত কীগুলি পরিচালনা করতে ডান ক্লিক করুন
  9. আপনার ব্যক্তিগত কী সেটিংস এখানে সেট করুন।

1
সার্ভার 2003 এ এটি কোনও বিকল্প নয় উল্লেখ করা যায় না, যদি না আমার পরিবেশটি দুর্বল হয়ে থাকে। যদিও আমি উইন্ডোজ 7 এ এটি করতে পারি।
শন হুবার্ড

আপনি এখানে বেসরকারী কী সেট বলতে কি বোঝায় ?? মানে আপনি কেবলমাত্র অ্যাক্সেস সহ ব্যবহারকারীকে যুক্ত করতে পারেন !?
মাস্টারভিভি

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

25
এটি আমার জন্য কাজ করার জন্য আমাকে আইআইএস_আইইউএসআরএসের অনুমতি দিতে হয়েছিল।
ট্রুএডি

1
আইআইএস এক্সপ্রেস চলাকালীন আপনি যদি এটি পেয়ে থাকেন তবে আপনাকে নিজের লগইন অনুমতি দেওয়া দরকার।
জেজ

38

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

সি: u নথি এবং নিষ্পত্তি sett প্রশাসক ...

পরিবর্তে

সি: u নথি এবং নিষ্পত্তি \ সমস্ত ব্যবহারকারী ...

কী-তে পর্যাপ্ত অনুমতিগুলি সঠিকভাবে সেট করা হয়েছিল, এএসপনেট এটি অ্যাক্সেস করতে পারেনি। যখন আমরা শংসাপত্রটি পুনরায় আমদানি করি যাতে প্রাইভেট কীটি সমস্ত ব্যবহারকারীর শাখায় রাখা হয়, সমস্যাটি অদৃশ্য হয়ে যায়।


একই সমস্যা. মাইক্রোসফ্টকে সুরক্ষা বোজোকে আশ্রয় করতে দেওয়া বন্ধ করতে হবে।
পল স্টোভেল

2
3 ঘন্টা হারিয়ে যাওয়ার পরে, এটি আমার সমস্যার সমাধান করে - আপনাকে ধন্যবাদ। আমি FindPrivateKey নমুনাটি ব্যবহার করেছি , এবং এটি এমএমসি স্ন্যাপ-ইন-এর মাধ্যমে লোকালম্যাচিনে উপস্থিত হওয়ার পরেও কেন এটি আমার ব্যবহারকারীর কীস্টোরের মধ্যে উপস্থিত হয়েছিল তা নিয়ে আমি বিভ্রান্ত হয়ে পড়েছিলাম।
রব পটার

আমি অন্যান্য বিয়ের মতো আমাকে যেমন অনুমতি দিয়েছিল তখন নষ্ট হয়ে যাওয়ার জন্য আমি কয়েক ঘন্টা বিয়ার কিনেছিলাম।
স্কট স্কাউডেন

আপনাকে ধন্যবাদ, আপনাকে ধন্যবাদ আপনাকে ধন্যবাদ! এই ভয়াবহ ইস্যুটির জন্য আমি আমার জীবনের প্রায় 2.5 ঘন্টা হারিয়েছি এবং আমি নিশ্চিত যে আমি যদি এটি না দেখি তবে আমি 2.5 দিন হারাতে পারতাম।
ফ্র্যাঙ্ক তজানাবিটিস

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

24

আইআইএস থেকে ব্রাউজ করার সময় "কীসেটটির অস্তিত্ব নেই" সমাধান করার জন্য: এটি ব্যক্তিগত অনুমতিের জন্য হতে পারে

অনুমতিটি দেখতে এবং দেওয়ার জন্য:

  1. চালান> MMC> হ্যাঁ
  2. ফাইল ক্লিক করুন
  3. অ্যাড / স্ন্যাপ-ইন সরান ক্লিক করুন ...
  4. শংসাপত্রের উপর ডাবল ক্লিক করুন
  5. কম্পিউটার অ্যাকাউন্ট
  6. পরবর্তী
  7. শেষ
  8. ঠিক আছে
  9. শংসাপত্রগুলিতে ক্লিক করুন (স্থানীয় কম্পিউটার)
  10. ব্যক্তিগত ক্লিক করুন
  11. শংসাপত্রগুলি ক্লিক করুন

অনুমতি দিতে:

  1. শংসাপত্রের নামে রাইট ক্লিক করুন
  2. সমস্ত কার্য> ব্যক্তিগত কীগুলি পরিচালনা করুন ...
  3. সুযোগ যোগ করুন এবং দিন (আইআইএস_আইইউএসআরএস যুক্ত করা এবং এটি অধিকার দেওয়া আমার পক্ষে কাজ করে)

1
আপনি যদি কোনও অ্যাপ পুলের অধীনে চলতে থাকেন তবে পরিবর্তে এই ব্যবহারকারীকে "আইআইএস অ্যাপপুল \ ডিফল্ট অ্যাপপুল" যুক্ত করুন
সমীর

এটি আমাকেও সাহায্য করেছে। আমি আইআইএস_আইইউএসআরএসকে অনুমতি দেওয়ার সাথে সাথে এটি কাজ শুরু করে।
আন্দ্রেজ মোহার

18

ভিজ্যুয়াল স্টুডিও থেকে ডাব্লুসিএফ অ্যাপ চালানোর চেষ্টা করার সময় একই সমস্যা ছিল। প্রশাসক হিসাবে ভিজ্যুয়াল স্টুডিও চালিয়ে এটি সমাধান করেছেন।


11

আমি এই সমস্যার মুখোমুখি হয়েছি, আমার শংসাপত্রগুলিতে যেখানে ব্যক্তিগত কী রয়েছে তবে আমি এই ত্রুটিটি পাচ্ছিলাম ( "কীসেটের অস্তিত্ব নেই" )

কারণ: আপনার ওয়েবসাইটটি "নেটওয়ার্ক পরিষেবাদি" অ্যাকাউন্টের অধীনে চলছে বা কম সুযোগ-সুবিধা পেয়েছে।

সমাধান : অ্যাপলিকেশন পুল পরিচয়টি "লোকাল সিস্টেম" এ পরিবর্তন করুন, আইআইএস পুনরায় সেট করুন এবং আবার চেক করুন। যদি এটি কাজ করা শুরু করে তবে এটি অনুমতি / কম সুবিধার সমস্যা, আপনি অন্য অ্যাকাউন্টগুলি ব্যবহার করেও ছদ্মবেশ তৈরি করতে পারেন।


8

সম্পূর্ণ হতাশার সাথে আমারও একই সমস্যা ছিল এবং উপরের বেশিরভাগ ক্ষেত্রে চেষ্টা করেছি। রফতানি শংসাপত্রের ফাইলটি সঠিকভাবে পড়ার অনুমতি ছিল C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys, তবে দেখা যাচ্ছে যে ফোল্ডারে এটির অনুমতি নেই। এটি যুক্ত এবং এটি কাজ করে


আমি এই সমস্যাটি সমাধান করার জন্য অনেক কিছুই চেষ্টা করেছি, কিন্তু এইটি কৌশলটি করেছে!
জিউম ফক্স

বাহ - এটি কাজ করার আশা করছিল না তবে তা করেছিল। আমি IISAPPPool\www.mywebsite.comআমার অ্যাপুলের জন্য উইন্ডোটির ব্যবহারকারীর নামটি যুক্ত করেছি এবং এটি কাজ করেছে :-)
সাইমন_উইভার

কেউ জানেন কেন এটি কাজ করে? এটি এমন কিছু দূষিত কারণ এটি বেশ অস্পষ্ট
সাইমন_উইভার

এটা করবেন না! সার্ভারটি "খারাপ অবস্থায়" যায় যেখানে শংসাপত্রগুলি আমদানি করা হয় এবং "মাইক্রোসফ্ট সফটওয়্যার কেএসপি" সরবরাহকারীর টাইপের সাথে প্রদর্শিত হয় যখন ফোল্ডার ..আরএসএ K মেশিনকিসের এর বেস অনুমতিগুলি পরিবর্তিত হয়েছে। আরও বিশদ reddit.com/r/sysadmin/comments/339ogk/…
ধনুকা 777

3

আমারও ঠিক একই রকম সমস্যা আছে। আমি কমান্ডটি ব্যবহার করেছি

findprivatekey root localmachine -n "CN="CertName" 

ফলাফলটি দেখায় যে প্রাইভেট কীটি সিটিতে রয়েছে: \ প্রোগ্রামের ডেটা ফোল্ডারের পরিবর্তে সি: \ ডকুমেন্টস এবং নিষ্পত্তি s সমস্ত ব্যবহারকারী ..

যখন আমি সি: \ প্রোগ্রামডাটা ফোল্ডার থেকে কীটি মুছব, আবার অনুসন্ধান চালান প্রাইভেটেকি কমান্ড সফল হয় না। অর্থাত। এটি চাবি খুঁজে না।

তবে যদি আমি আগের কমান্ড দ্বারা ফিরে আসা একই কীটি সন্ধান করি তবে আমি কীটি এখনও খুঁজে পেতে পারি

সি: u নথি এবং নিষ্পত্তি \ সমস্ত ব্যবহারকারী ..

সুতরাং আমার বোঝার জন্য, আইআইএস বা হোস্ট করা ডাব্লুসিএফ সি: u নথি এবং নিষ্পত্তি \ সমস্ত ব্যবহারকারীদের থেকে ব্যক্তিগত কী খুঁজে পাচ্ছে না ..


2
হাই এই লিঙ্কটি আপনাকে কীভাবে এই সমস্যাটি সমাধান করবেন এবং সন্ধানকারী সরঞ্জামটি সনাক্ত করতে হবে তা বলবে : ব্লগস.এমএসডন.মাইক্রোসফট
তাহির খালিদ

3

আমি ত্রুটিটি পেয়েছিলাম: এমভিসি অ্যাপ্লিকেশনটি চালানোর সময় ক্রিপ্টোগ্রাফিক এক্সপশন 'কীসেটের অস্তিত্ব নেই'।

সমাধানটি ছিল: অ্যাকাউন্টটিতে ব্যক্তিগত শংসাপত্রগুলি অ্যাক্সেস দেওয়ার জন্য যে অ্যাপ্লিকেশন পুলটি চলছে। আমার ক্ষেত্রে এটি ছিল আইআইএস_আইইউএসআরএস যুক্ত করা এবং সঠিক অবস্থান চয়ন করা এই সমস্যার সমাধান করেছে।

RC on the Certificate - > All tasks -> Manage Private Keys -> Add->  
For the From this location : Click on Locations and make sure to select the Server name. 
In the Enter the object names to select : IIS_IUSRS and click ok. 

2

স্টিভ শেল্ডনের উত্তর আমার জন্য সমস্যাটি স্থির করেছে, তবে আমি যেহেতু শংসাপত্রের অনুমতিগুলি স্ক্রিপ্ট করছি তাই আমার স্ক্রিপ্টযোগ্য সমাধানের প্রয়োজন। আমার প্রাইভেট কীটি কোথায় সংরক্ষণ করা হয়েছিল তা খুঁজতে আমি সংগ্রাম করেছিলাম। ব্যক্তিগত কীটি ছিল না -C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys, শেষ পর্যন্ত আমি দেখতে পেলাম যে এটি আসলে ছিল C:\ProgramData\Microsoft\Crypto\Keys। আমি এটি কীভাবে খুঁজে পেয়েছি তার নীচে আমি বর্ণনা করছি:

আমি চেষ্টা করেছি FindPrivateKeyকিন্তু এটি ব্যক্তিগত কীটি খুঁজে পায় নি, এবং পাওয়ারশেলটি ব্যবহার $cert.privatekey.cspkeycontainerinfo.uniquekeycontainernameকরা শূন্য / খালি ছিল।

ভাগ্যক্রমে, certutil -store myশংসাপত্রটি তালিকাভুক্ত এবং সমাধানের স্ক্রিপ্টের জন্য আমার প্রয়োজনীয় বিশদটি আমাকে দিয়েছিলেন।

================ Certificate 1 ================ Serial Number: 162f1b54fe78c7c8fa9df09 Issuer: CN=*.internal.xxxxxxx.net NotBefore: 23/08/2019 14:04 NotAfter: 23/02/2020 14:24 Subject: CN=*.xxxxxxxnet Signature matches Public Key Root Certificate: Subject matches Issuer Cert Hash(sha1): xxxxa5f0e9f0ac8b7dd634xx Key Container = {407EC7EF-8701-42BF-993F-CDEF8328DD} Unique container name: 8787033f8ccb5836115b87acb_ca96c65a-4b42-a145-eee62128a ##* ^-- filename for private key*## Provider = Microsoft Software Key Storage Provider Private key is NOT plain text exportable Encryption test passed CertUtil: -store command completed successfully.

তারপরে আমি c\ProgramData\Microsoft\Crypto\ফোল্ডারটি স্ক্যান করেছি এবং সি: D প্রোগ্রামডেটা \ মাইক্রোসফ্ট \ ক্রিপ্টো \ কীগুলিতে 8787033f8ccb5836115b87acb_ca96c65a-4b42-a145-eee62128a ফাইলটি পেয়েছি

আমার পরিষেবা অ্যাকাউন্টটি পড়ার অ্যাক্সেস দেওয়া এই ফাইলটি আমার জন্য সমস্যাগুলি স্থির করে


1
আমার সমস্যা সমাধানের মূল বিষয় ছিল "সার্টুটিল-স্টোর মাই" ব্যবহার করা। আমি ফাইলটি সনাক্ত করতে "অনন্য ধারকের নাম" এবং শংসাপত্রের ফাইলে একটি "অ্যাক্সেস অস্বীকৃত" ত্রুটি সমাধানের জন্য সাইনস্টিনালস প্রসেস মনিটর ব্যবহার করেছি। আমার ক্ষেত্রে আমাকে এনটি কর্তৃপক্ষের আইওএসআর ব্যবহারকারীর শংসাপত্রের ফাইলে পঠিত অ্যাক্সেস সরবরাহ করতে হয়েছিল।
এইচএসপ

1

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

আমি অবশেষে স্থানীয় মেশিনে বিশ্বস্ত লোকদের দোকানে ব্যক্তিগত কীটি আমদানি করেছিলাম এবং তারপরে প্রাইভেট কীটিকে সঠিক অনুমতি দিয়েছিলাম।

এটি আমার জন্য শূন্যস্থান পূরণ করেছে এবং শেষ পর্যন্ত আমাকে বার্তা স্তর স্তরের সুরক্ষার সাথে ডাব্লুসিএফ পরিষেবাটি প্রয়োগ করার অনুমতি দেয়। আমি একটি ডাব্লুসিএফ তৈরি করছি যা অবশ্যই হিপপা অনুগত হবে।


1

আমি স্রেফ স্থানীয় মেশিনে আমার শংসাপত্র পুনরায় ইনস্টল করেছি এবং এটি ঠিকঠাক কাজ করছে


0

আপনি যদি আপনার অ্যাপ্লিকেশন পুলের জন্য অ্যাপ্লিকেশনপুল পরিচয় ব্যবহার করেন তবে রেজিস্ট্রি সম্পাদকের সেই "ভার্চুয়াল" ব্যবহারকারীর জন্য অনুমতি নির্দিষ্ট করার ক্ষেত্রে আপনার সমস্যা হতে পারে (সিস্টেমে এমন ব্যবহারকারী নেই)।

সুতরাং, সাবিনাকল - কমান্ড-লাইন সরঞ্জাম ব্যবহার করুন যা রেজিস্ট্রি এসিএল, বা এর মতো আরও কিছু সক্ষম করে।


0

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


0

আইআইএস 7-তে ওপেনএএম ফেডলেট ব্যবহার করার সময় এই ত্রুটিটি পেয়েছি

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


0

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

"X509FindValue" বৈশিষ্ট্যটির মানটি নোট করুন।

<!-- this block added to allow low priv processes (such as service fabric processes) that run as NETWORK SERVICE to read certificates from the store -->
  <Principals>
    <Users>
      <User Name="NetworkService" AccountType="NetworkService" />
    </Users>
  </Principals>
  <Policies>
    <SecurityAccessPolicies>
      <SecurityAccessPolicy ResourceRef="AzureKeyvaultClientCertificate" PrincipalRef="NetworkService" GrantRights="Full" ResourceType="Certificate" />
    </SecurityAccessPolicies>
  </Policies>
  <Certificates>
    <SecretsCertificate X509FindValue="[[THIS KEY ALSO NEEDS TO BE UPDATED]]" Name="AzureKeyvaultClientCertificate" />
  </Certificates>
  <!-- end block -->


0

এটি আমার জন্য কাজ করা একমাত্র সমাধান।

    // creates the CspParameters object and sets the key container name used to store the RSA key pair
    CspParameters cp = new CspParameters();
    cp.KeyContainerName = "MyKeyContainerName"; //Eg: Friendly name

    // instantiates the rsa instance accessing the key container MyKeyContainerName
    RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp);
    // add the below line to delete the key entry in MyKeyContainerName
    // rsa.PersistKeyInCsp = false;

    //writes out the current key pair used in the rsa instance
    Console.WriteLine("Key is : \n" + rsa.ToXmlString(true));

রেফারেন্স 1

রেফারেন্স 2


0
This issue is got resolved after adding network service role.

CERTIFICATE ISSUES 
Error :Keyset does not exist means System might not have access to private key
Error :Enveloped data  
Step 1:Install certificate in local machine not in current user store
Step 2:Run certificate manager
Step 3:Find your certificate in the local machine tab and right click manage privatekey and check in allowed personnel following have been added:
a>Administrators
b>yourself
c>'Network service'
And then provide respective permissions.

## You need to add 'Network Service' and then it will start working.
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.