I was able to get EAP-TLS RADIUS authentication working for the system/loginwindow using machine certificates from an Active Directory Certificate Services store by creating a .mobileconfig file that contained additional payloads. The support article referenced above mentions that a machine certificate can be generated at the time that the profile payload is installed, but does not go into additional detail on what else is necessary to create a profile that can be imported onto a Mac running Lion to allow system/loginwindow RADIUS authentication.
After some experimentation, I was able to get this working using three additional payloads: one payload for the WiFi access point (com.apple.wifi.managed), and two additional payloads that allow us to specify trust for our self-signed root CA's signing certificate. The additional certificate is probably not necessary, but could help in a situation where an intermediate CA signs the certs. A basic framework for the WiFi managed payload can be created using iPhone Configuration Utility. I created the two certificate payloads using iPCU, and then pasted those payload dictionaries into the .mobileconfig payloads array (without modifying the payload).
I'll paste an example of what a working configuration looks like (I could not find any good resources documenting this setup):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>CertServer</key>
<string>http://dc1.ad.example.com/certsrv</string>
<key>CertTemplate</key>
<string>Machine</string>
<key>PromptForCredentials</key>
<false/>
<key>ADCertServerCertificateIDReplySearchString</key>
<string></string>
<key>PayloadDisplayName</key>
<string>WiFi Config</string>
<key>PayloadIdentifier</key>
<string>com.example.profile.wifi.ADCertificate.config</string>
<key>PayloadType</key>
<string>com.apple.ADCertificate.managed</string>
<key>PayloadUUID</key>
<string>5A1088D2-95B7-4A3E-8B17-A667405C73F8</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>deleted</key>
<false/>
</dict>
<dict>
<key>AutoJoin</key>
<true/>
<key>EAPClientConfiguration</key>
<dict>
<key>AcceptEAPTypes</key>
<array>
<integer>13</integer>
</array>
<key>EAPFASTProvisionPAC</key>
<false/>
<key>EAPFASTProvisionPACAnonymously</key>
<false/>
<key>EAPFASTUsePAC</key>
<false/>
<key>UserName</key>
<string>host/computer_name.ad.example.com</string>
<key>PayloadCertificateAnchorUUID</key>
<array>
<string>CD1BE015-1D42-4402-AB02-71B283806BE9</string>
<string>49D8C78A-4E0E-408B-B4ED-DD200B068D09</string>
</array>
</dict>
<key>EncryptionType</key>
<string>WPA</string>
<key>HIDDEN_NETWORK</key>
<false/>
<key>PayloadDescription</key>
<string>Configures wireless connectivity settings.</string>
<key>PayloadDisplayName</key>
<string>WiFi Config</string>
<key>PayloadIdentifier</key>
<string>com.example.profile.wifi.config</string>
<key>PayloadOrganization</key>
<string>Example, Inc.</string>
<key>SetupModes</key>
<array>
<string>System</string>
<string>Loginwindow</string>
</array>
<key>PayloadScope</key>
<string>System</string>
<key>PayloadType</key>
<string>com.apple.wifi.managed</string>
<key>PayloadUUID</key>
<string>752F1A6C-673A-4026-BFBB-814172B1DB7A</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>ProxyType</key>
<string>None</string>
<key>SSID_STR</key>
<string>Test</string>
</dict>
<dict>
<key>PayloadCertificateFileName</key>
<string>Certificate.cer</string>
<key>PayloadContent</key>
<data>
CERTIFICATE_DATA
</data>
<key>PayloadDescription</key>
<string>Provides device authentication (certificate or identity).</string>
<key>PayloadDisplayName</key>
<string>AD-DC1-CA</string>
<key>PayloadIdentifier</key>
<string>com.example.profile.wifi.credential.ca</string>
<key>PayloadOrganization</key>
<string>Example, Inc.</string>
<key>PayloadType</key>
<string>com.apple.security.root</string>
<key>PayloadUUID</key>
<string>CD1BE015-1D42-4402-AB02-71B283806BE9</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
<dict>
<key>PayloadCertificateFileName</key>
<string>dc1.AD.EXAMPLE.COM.cer</string>
<key>PayloadContent</key>
<data>
CERTIFICATE_DATA
</data>
<key>PayloadDescription</key>
<string>Provides device authentication (certificate or identity).</string>
<key>PayloadDisplayName</key>
<string>dc1.AD.EXAMPLE.COM</string>
<key>PayloadIdentifier</key>
<string>com.example.profile.wifi.credential.dc1</string>
<key>PayloadOrganization</key>
<string>Example, Inc.</string>
<key>PayloadType</key>
<string>com.apple.security.pkcs1</string>
<key>PayloadUUID</key>
<string>49D8C78A-4E0E-408B-B4ED-DD200B068D09</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDescription</key>
<string>Example Wi-Fi profile configuration.</string>
<key>PayloadDisplayName</key>
<string>Example Wi-Fi</string>
<key>PayloadIdentifier</key>
<string>com.example.profile.wifi</string>
<key>PayloadOrganization</key>
<string>Example, Inc.</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>SystemConfiguration</string>
<key>PayloadUUID</key>
<string>9AEFDD4A-B8BD-4CB7-AE22-964B9457D31D</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
Some of the more important points:
1.) This setup uses EAP-TLS (type 13) with machine certificates only - user certs could be used in similar payloads
2.) The EAPClientConfiguration "UserName" string is passed to the RADIUS server for authentication. This string must be specified as host/computer_account.example.com (where computer_account is the "Computer Account" name in AD, and "example.com" is the AD domain/forest). This hostname may also be how the computer is determining which certificate to use from the keychain (but I have not confirmed).
3.) The PayloadCertificateAnchorUUID key in the EAPClientConfiguration dict should specify the UUIDs of the certificate payloads in this .mobileconfig file that should be trusted
4.) SetupModes and PayloadScope in the com.apple.wifi.managed payload is probably important, but I have not been able to test exhaustively.
5.) "CERTIFICATE_DATA" will actually be a large string of data - I've removed it for brevity.
To deploy this to a number of Macs, we created a template .mobileconfig file using an arbitrary string for the EAPClientConfiguration UserName ("TEMP_COMPUTER_NAME"). This template gets filled in using a shell script that checks the AD configuration using `dsconfigad -show`. After getting the computer account and domain/forest info, the shell script populates the username in the template .mobileconfig file. Finally, the script then kinits, imports the profile, and cleans up the .mobileconfig that was generated from the template. The computer should join the wireless network automatically after importing the system profile, and should remain connected even after users logout.
Hope this helps.