Acerca de su requisito "Estoy interesado en verificar que el usuario esté usando mi aplicación Windows 8 y no solo algún 'hacker' usando Fiddler.", No estoy seguro de qué tan profundo trataría de proteger su aplicación como si otros quiero probar consumir tu aplicación de manera diferente, encontrarán su camino y si crees que usar ACS o LiveSDK agrega seguridad, no lo creo.
Los servicios ACS o LiveSDK son formas de autenticar a un usuario específico y luego permitirle usar su aplicación. Una vez que el token de autenticación se entrega a su aplicación sobre un usuario específico y no tiene forma de guardar y volver a verificar esa información, no hay diferencia entre tener una autenticación basada en ACS/LiveSDK en su aplicación o no tenerla. Estos servicios basados en oAuth son solo una forma de autenticar al usuario, sin embargo, necesitaría escribir una capa adicional del código para proporcionar un servicio específico para el usuario.
No importa si usa ACS/oAuth/o su propio servicio de membresía, el usuario tendrá que ingresar el nombre de usuario y la contraseña para autenticarse ocasionalmente. Según el tiempo y el tipo de inicio de sesión, puede mantener al usuario activo durante x período de tiempo como sesión en vivo, sin embargo, la sesión caducará y el usuario tendrá que ingresar el nombre de usuario y la contraseña. Almacenar el nombre de usuario y la contraseña localmente para evitar ingresar credenciales nuevamente no es un buen diseño de aplicación.
Ahora, acerca de su primera pregunta, debería usar LiveSDK (no Azure ACS) para autenticar usuarios de Live (Hotmail, Live, Skydrive y Outlook) porque en Windows 8 la mayoría de los servicios usan esta ID, por lo que usa uno de esto ayudará a su aplicación a ser parte del mismo ecosistema. Puede usar this latest doc para usar Live SDK en su aplicación. Si usa Live SDK en su aplicación Windows 8 y el usuario usa la misma identificación en vivo para su otra aplicación en Windows 8 e inicia sesión antes de su aplicación, su aplicación ya tendrá una sesión en vivo para usarla. Depende de Live ID y la configuración de la aplicación .
Acerca de su segunda pregunta "Encripte y almacene los datos de inicio de sesión del usuario para evitar que el usuario tenga que ingresar detalles de inicio de sesión cada vez?" No estoy seguro de por qué lo necesitas. En primer lugar, ningún servicio de OAuth le proporcionará credenciales de inicio de sesión de usuario, además del nombre de usuario, que podrá guardar para verificar si el usuario vuelve a visitar y que puede usar para asegurarse de que es un usuario adecuado. Debe necesitar almacenar esta información en la nube y, una vez autenticada, haga lo que desee.
Dado que su aplicación está en Windows 8 y desea utilizar la cuenta de Microsoft, ¿ha considerado usar el Live SDK directamente? Michael Crump tiene un artículo sobre la integración de Live SDK con su aplicación WinRT en http://www.silverlightshow.net/items/Using-the-Live-SDK-in-Windows-8-XAML-C-Metro-Applications.aspx –