One question at the AzMan talk was about how to use AzMan with non-Windows accounts, e.g. with applications that roll their own user management (like Web Applications, SQL Server type user stores) or alternate authentication protocols like RSA SecureID.
What’s pretty cool about AzMan is that you don’t have to necessarily map your roles to windows accounts.
You can stick three different identity types into the AzMan access check functions.
1. Tokens
2. Usernames
3. SIDs
Number 1 clearly maps to Windows Accounts, number 2 maps to Windows Usernames (DOMAINUSER Format) or results of LDAP queries.
Number 3 can be a SID of a Windows User account or just any SID you store in the AzMan policy store. SIDs don’t get verified against AD or the SAM when adding them to the store or doing access checks.
This feature is very powerful as you can design your own SID structure and map these to your application managed user accounts and – voila – you can use the powerful authorization API within your applications.
When having to integrate other authentication protocols, the new protocol transition feature of Kerberos in Windows 2003 server comes in handy. An application or a gateway could request (after authenticating the user) an S4USelf ticket. This ticket contains a Token which then can be used to feed AzMan.
I’ve written a proof of concept program for the Custom SID scenario. I will post some code in the next days.
more on S4U Kerberos Extensions here.