2010-11-18 12 views
1

Bir uygulama (SharpSSH kullanan C# programı) var ve şu anda oturum açmamış bir kullanıcının kimlik bilgilerini çalıştırmaya çalışırsam "keyset yok" diyen bir CryptographicException hatası."keyset yok" kullanıcı oturumu açamıyorsa hata

Uygulamayı, şu anda oturum açmış olan bir kullanıcının kimlik bilgileriyle çalıştırırsam, her şey yolunda çalışır.

Bunun neden olabileceği hakkında bir fikriniz var mı?

cevap

1

Diğer her şey eşittir (kimlik bilgilerine erişme haklarınız gibi) İhtiyacınız olan kimlik bilgilerini kullanıcının kovanı/profilinde saklıyorum. Hangi certificate store SharpSSH'nin kullanacağını bilmiyorum (hatta kullandığınız SharpSSH'yi [codeplex'te bir tane var ve sourceforge'da bir tane var]).

Kimlik bilgilerinin HKEYUser'e bağlı olduğunu varsayarak düzeltmek için kullanıcının profilini LoadUserProfile ile yüklemeniz gerekir. Bu, kullanıcı için bir güvenlik belirtecine sahip olmanız gerektiği anlamına gelir (yani, bunları oturum açmanız gerekir, ancak etkileşimli olmak zorunda kalmazsınız). Ya da belki de kullanıcıya bağlı olmayan bir sertifika deposuna geçebilirsiniz.

İlgili konular