diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-03 07:20:01 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-03 07:20:01 -0800 |
commit | e38569da243fb331c46bfc2823dab749b5416327 (patch) | |
tree | e2d312777958271dfed83b4e73b57fe953245261 /src/DotNetOpenAuth.OAuth2.AuthorizationServer | |
parent | ae44be6fcfe656d7f8ff0bb6162c67cc06384884 (diff) | |
parent | 778328ec797299ed6aa01279b3ccbf1eb15258bd (diff) | |
download | DotNetOpenAuth-e38569da243fb331c46bfc2823dab749b5416327.zip DotNetOpenAuth-e38569da243fb331c46bfc2823dab749b5416327.tar.gz DotNetOpenAuth-e38569da243fb331c46bfc2823dab749b5416327.tar.bz2 |
Merge remote-tracking branch 'origin/v4.1' into v4.1
Diffstat (limited to 'src/DotNetOpenAuth.OAuth2.AuthorizationServer')
5 files changed, 37 insertions, 4 deletions
diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.Designer.cs b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.Designer.cs index 4b4f830..8941a94 100644 --- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.Designer.cs +++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.Designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // <auto-generated> // This code was generated by a tool. -// Runtime Version:4.0.30319.17614 +// Runtime Version:4.0.30319.18010 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -70,6 +70,15 @@ namespace DotNetOpenAuth.OAuth2 { } /// <summary> + /// Looks up a localized string similar to The access token's private signing key must be set.. + /// </summary> + internal static string AccessTokenSigningKeyMissing { + get { + return ResourceManager.GetString("AccessTokenSigningKeyMissing", resourceCulture); + } + } + + /// <summary> /// Looks up a localized string similar to The callback URL ({0}) is not allowed for this client.. /// </summary> internal static string ClientCallbackDisallowed { diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.resx b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.resx index 29d841a..8aaa567 100644 --- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.resx +++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthServerStrings.resx @@ -112,14 +112,17 @@ <value>2.0</value> </resheader> <resheader name="reader"> - <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> <resheader name="writer"> - <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> <data name="AccessScopeExceedsGrantScope" xml:space="preserve"> <value>The requested access scope exceeds the grant scope.</value> </data> + <data name="AccessTokenSigningKeyMissing" xml:space="preserve"> + <value>The access token's private signing key must be set.</value> + </data> <data name="ClientCallbackDisallowed" xml:space="preserve"> <value>The callback URL ({0}) is not allowed for this client.</value> </data> diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServer.cs b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServer.cs index 6a96c2d..1e404e7 100644 --- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServer.cs +++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServer.cs @@ -10,6 +10,9 @@ namespace DotNetOpenAuth.OAuth2 { using System.Diagnostics.CodeAnalysis; using System.Diagnostics.Contracts; using System.Linq; +#if CLR4 + using System.Net.Http; +#endif using System.Security.Cryptography; using System.Text; using System.Web; @@ -129,6 +132,17 @@ namespace DotNetOpenAuth.OAuth2 { this.Channel.Respond(response); } +#if CLR4 + /// <summary> + /// Handles an incoming request to the authorization server's token endpoint. + /// </summary> + /// <param name="request">The HTTP request.</param> + /// <returns>The HTTP response to send to the client.</returns> + public OutgoingWebResponse HandleTokenRequest(HttpRequestMessage request) { + return this.HandleTokenRequest(new HttpRequestInfo(request)); + } +#endif + /// <summary> /// Handles an incoming request to the authorization server's token endpoint. /// </summary> diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServerAccessToken.cs b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServerAccessToken.cs index c577a0a..a127166 100644 --- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServerAccessToken.cs +++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/AuthorizationServerAccessToken.cs @@ -45,6 +45,7 @@ namespace DotNetOpenAuth.OAuth2 { /// </summary> /// <returns>A non-empty string.</returns> protected internal override string Serialize() { + ErrorUtilities.VerifyHost(this.AccessTokenSigningKey != null, AuthServerStrings.AccessTokenSigningKeyMissing); var formatter = CreateFormatter(this.AccessTokenSigningKey, this.ResourceServerEncryptionKey); return formatter.Serialize(this); } diff --git a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/ChannelElements/ClientCredentialHttpBasicReader.cs b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/ChannelElements/ClientCredentialHttpBasicReader.cs index 655d38f..6f0bbc4 100644 --- a/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/ChannelElements/ClientCredentialHttpBasicReader.cs +++ b/src/DotNetOpenAuth.OAuth2.AuthorizationServer/OAuth2/ChannelElements/ClientCredentialHttpBasicReader.cs @@ -7,6 +7,7 @@ namespace DotNetOpenAuth.OAuth2.ChannelElements { using System; using System.Collections.Generic; + using System.Globalization; using System.Linq; using System.Text; using System.Web; @@ -21,10 +22,15 @@ namespace DotNetOpenAuth.OAuth2.ChannelElements { /// Gets this module's contribution to an HTTP 401 WWW-Authenticate header so the client knows what kind of authentication this module supports. /// </summary> public override string AuthenticateHeader { - get { return "Basic"; } + get { return string.Format(CultureInfo.InvariantCulture, "Basic realm=\"{0}\"", this.Realm); } } /// <summary> + /// Gets or sets the realm that is included in an HTTP WWW-Authenticate header included in a 401 Unauthorized response. + /// </summary> + public string Realm { get; set; } + + /// <summary> /// Attempts to extract client identification/authentication information from a message. /// </summary> /// <param name="authorizationServerHost">The authorization server host.</param> |