2009-06-16 22 views
0

次のコードは、カスタムWebPartで使用されています。何らかの理由で、ページで初めて実行されるときにのみ機能します。その後、SingleSignonCredsNotFoundExceptionがスローされますSharePointのコードによるSSO資格情報の取得に失敗する

この問題を解決する方法については、何かアドバイスをお願いします。

public static SsoIdentity GetCredentials(string applicationName) 
{ 
    try 
    { 
     ISsoProvider ssoProvider = SsoProviderFactory.GetSsoProvider(); 
     SsoCredentials credentials = ssoProvider.GetCredentials(applicationName); 

     string[] tmp = ConvertSecurityStringToString(credentials.UserName).Split(new string[] { "\\" }, StringSplitOptions.RemoveEmptyEntries); 
     string username = tmp[1]; 
     string domain = tmp[0]; 
     string password = ConvertSecurityStringToString(credentials.Password); 

     SsoIdentity wi = new SsoIdentity(username, password, domain); 

     return wi; 
    } 
    catch (SingleSignonCredsNotFoundException ex) 
    { 

    } 
    catch (SingleSignonException ex) 
    { 

    } 

    return null; 
} 

答えて

0

明らかに問題は、私がsso資格情報ストアから取得していたユーザーを偽装していたことでした。しかし、これを元に戻すと、アプリケーションプールのIDに戻り、次にGetCredentialsがssoでそのユーザーをlokosと呼びます。これは必ずしもssoアプリケーションのメンバーではありません。

関連する問題