Я использую новую обертку OAuthWebSecurity для DotNetOpenAuth, чтобы разрешить пользователям входить в приложение MVC4 со своей учетной записью Microsoft (иначе Windows Live ID).Как лучше контролировать, как DotNetOpenAuth использует учетную запись Microsoft (Live ID)?
Я зарегистрировал майкрософт клиента:
OAuthWebSecurity.RegisterMicrosoftClient(clientId: "...", clientSecret: "...");
Это все работает, и я люблю простоту этого. Но как я уточню, что он делает?
После выбора войти в систему под своей учетной записью Microsoft, пользователь попадает на экран с просьбой войти в систему:
Когда они войти, я хочу, чтобы иметь возможность проверить «Держите меня подписанным». затем
Microsoft просит для них OK моего доступа:
Но я на самом деле не хочет что много доступа. Все, что я хочу, это их имя и адрес электронной почты. И, может быть, их картина. Мне, конечно, не нужен или не нужен доступ к их контактам и друзьям. Это отпугнет моих пользователей.
Где я могу передать параметры OAuthWebSecurity или DotNetOpenAuth для управления этим?
Таким образом, пользователь нажимает да и все в порядке. Однако, когда они уходят и возвращаются на мой сайт - опция «держать меня в игре» должна быть выполнена. Это не так. Вместо этого, они видят в этом:
Я не понимаю, что сообщение говорит:
Поскольку вы обращаетесь конфиденциальной информации, вам необходимо подтвердить свой пароль.
Какая конфиденциальная информация? Контакты или друзей, с которыми я не хотел начинать? Или что-то другое?
Как я могу обойти эти два вопроса, чтобы сделать мое приложение более удобным?
Вы когда-нибудь работали? У меня возникла проблема с регистрацией в Azure в Powershell, и нет никаких действий, которые вы можете выполнить на странице –
@DanCsharpster. У вас может быть один и тот же опыт пользовательского интерфейса, но в моем случае я контролировал взаимодействие приложения с поставщиком удостоверений (MS Account) напрямую, и при выборе правильной области исправлена проблема (как в принятом ответе). –