SharePointのコードからSSO資格情報を取得できません
-
05-07-2019 - |
質問
次のコードはカスタムWebPartで使用され、何らかの理由でページで最初に実行されたときにのみ機能します。その後、SingleSignonCredsNotFoundExceptionがスローされます
この問題を解決する方法についてのヘルプまたは提案は大歓迎です。
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;
}
解決
そのため、明らかに問題は、sso資格情報ストアから取得したユーザーになりすましたことでした。ただし、これを元に戻すと、アプリケーションプールのIDに戻り、次にGetCredentialsが呼び出されて、ssoでそのユーザーが検索されます。これは必ずしもssoアプリケーションのメンバーではありません。
所属していません StackOverflow