diff --git a/Owin.Security.Providers/GitHub/GitHubAuthenticationHandler.cs b/Owin.Security.Providers/GitHub/GitHubAuthenticationHandler.cs
index 0b9cdbb..f52bfbb 100644
--- a/Owin.Security.Providers/GitHub/GitHubAuthenticationHandler.cs
+++ b/Owin.Security.Providers/GitHub/GitHubAuthenticationHandler.cs
@@ -103,6 +103,10 @@ namespace Owin.Security.Providers.GitHub
{
context.Identity.AddClaim(new Claim(ClaimsIdentity.DefaultNameClaimType, context.UserName, XmlSchemaString, Options.AuthenticationType));
}
+ if (!string.IsNullOrEmpty(context.Email))
+ {
+ context.Identity.AddClaim(new Claim(ClaimTypes.Email, context.Email, XmlSchemaString, Options.AuthenticationType));
+ }
if (!string.IsNullOrEmpty(context.Name))
{
context.Identity.AddClaim(new Claim("urn:github:name", context.Name, XmlSchemaString, Options.AuthenticationType));
diff --git a/Owin.Security.Providers/GitHub/Provider/GitHubAuthenticatedContext.cs b/Owin.Security.Providers/GitHub/Provider/GitHubAuthenticatedContext.cs
index dec8d80..c4ccea8 100644
--- a/Owin.Security.Providers/GitHub/Provider/GitHubAuthenticatedContext.cs
+++ b/Owin.Security.Providers/GitHub/Provider/GitHubAuthenticatedContext.cs
@@ -31,6 +31,7 @@ namespace Owin.Security.Providers.GitHub
Name = TryGetValue(user, "name");
Link = TryGetValue(user, "url");
UserName = TryGetValue(user, "login");
+ Email = TryGetValue(user, "email");
}
///
@@ -64,6 +65,11 @@ namespace Owin.Security.Providers.GitHub
///
public string UserName { get; private set; }
+ ///
+ /// Gets the GitHub email
+ ///
+ public string Email { get; private set; }
+
///
/// Gets the representing the user
///