We have developed an authorization module that uses SFAuthorizationPluginView to present the user interface to the user. This example is based on the "old" NameAndPassword example provided by Apple.
We use this authorization module to unlock the session (we updated the authorization "system.login.screensaver" in authorizationdb) using a custom view. This worked well until the last upgrade to Yosemite. Starting with Yosemite, SFAuthorizationPluginView no longer closes after a user logs into a session. We could update this example to force the window to close by doing something like:
[self callbacks]->SetResult ([self engineRef], kAuthorizationResultAllow);
NSView* v = [self viewForType:SFViewTypeCredentials];
NSWindow* w = [v window];
[w close];
Now SFAuthorizationPluginView is well closed after the user logs in (after we authorized the user), but something remains in the background and the user does not have focus in the session (the user cannot select anything or write to text editing, for example ) We must manually kill the SecurityAgent in order to get focus again. (note that the system automatically kills SecurityAgent after 30 seconds).
We found a fixed version of Apple NameAndPassword module version 2014 on the next page, but we are facing the same problem in Yosemite:
Fixed version of Apple NameAndPassword plugin for version 2014 .
This code worked great for us before the release of Yosemite.
Is anyone experimenting with a similar problem? Any idea or advice to solve this problem?