Detect remote denails for Twitter accounts
This commit is contained in:
parent
c67cc03b77
commit
e13ceb690b
|
|
@ -60,6 +60,12 @@ namespace Microsoft.AspNetCore.Authentication.Twitter
|
||||||
|
|
||||||
// REVIEW: see which of these are really errors
|
// REVIEW: see which of these are really errors
|
||||||
|
|
||||||
|
var denied = query["denied"];
|
||||||
|
if (!StringValues.IsNullOrEmpty(denied))
|
||||||
|
{
|
||||||
|
return HandleRequestResult.Fail("The user denied permissions.", properties);
|
||||||
|
}
|
||||||
|
|
||||||
var returnedToken = query["oauth_token"];
|
var returnedToken = query["oauth_token"];
|
||||||
if (StringValues.IsNullOrEmpty(returnedToken))
|
if (StringValues.IsNullOrEmpty(returnedToken))
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -195,6 +195,7 @@ namespace Microsoft.AspNetCore.Authentication.Twitter
|
||||||
OnRemoteFailure = context =>
|
OnRemoteFailure = context =>
|
||||||
{
|
{
|
||||||
Assert.NotNull(context.Failure);
|
Assert.NotNull(context.Failure);
|
||||||
|
Assert.Equal("The user denied permissions.", context.Failure.Message);
|
||||||
Assert.NotNull(context.Properties);
|
Assert.NotNull(context.Properties);
|
||||||
Assert.Equal("testvalue", context.Properties.Items["testkey"]);
|
Assert.Equal("testvalue", context.Properties.Items["testkey"]);
|
||||||
context.Response.StatusCode = StatusCodes.Status406NotAcceptable;
|
context.Response.StatusCode = StatusCodes.Status406NotAcceptable;
|
||||||
|
|
@ -220,7 +221,7 @@ namespace Microsoft.AspNetCore.Authentication.Twitter
|
||||||
var setCookieValue = setCookieValues.Single();
|
var setCookieValue = setCookieValues.Single();
|
||||||
var cookie = new CookieHeaderValue(setCookieValue.Name, setCookieValue.Value);
|
var cookie = new CookieHeaderValue(setCookieValue.Name, setCookieValue.Value);
|
||||||
|
|
||||||
var request = new HttpRequestMessage(HttpMethod.Get, "/signin-twitter");
|
var request = new HttpRequestMessage(HttpMethod.Get, "/signin-twitter?denied=ABCDEFG");
|
||||||
request.Headers.Add(HeaderNames.Cookie, cookie.ToString());
|
request.Headers.Add(HeaderNames.Cookie, cookie.ToString());
|
||||||
var client = server.CreateClient();
|
var client = server.CreateClient();
|
||||||
var response = await client.SendAsync(request);
|
var response = await client.SendAsync(request);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue