diff options
Diffstat (limited to 'src/DotNetOpenAuth.OAuth2/OAuth2/ChannelElements/IAuthorizationCarryingRequest.cs')
-rw-r--r-- | src/DotNetOpenAuth.OAuth2/OAuth2/ChannelElements/IAuthorizationCarryingRequest.cs | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/DotNetOpenAuth.OAuth2/OAuth2/ChannelElements/IAuthorizationCarryingRequest.cs b/src/DotNetOpenAuth.OAuth2/OAuth2/ChannelElements/IAuthorizationCarryingRequest.cs new file mode 100644 index 0000000..e450131 --- /dev/null +++ b/src/DotNetOpenAuth.OAuth2/OAuth2/ChannelElements/IAuthorizationCarryingRequest.cs @@ -0,0 +1,54 @@ +//----------------------------------------------------------------------- +// <copyright file="IAuthorizationCarryingRequest.cs" company="Andrew Arnott"> +// Copyright (c) Andrew Arnott. All rights reserved. +// </copyright> +//----------------------------------------------------------------------- + +namespace DotNetOpenAuth.OAuth2.ChannelElements { + using System.Security.Cryptography; + + using Messaging; + + /// <summary> + /// The various types of tokens created by the authorization server. + /// </summary> + internal enum CodeOrTokenType { + /// <summary> + /// The code issued to the client after the user has approved authorization. + /// </summary> + AuthorizationCode, + + /// <summary> + /// The long-lived token issued to the client that enables it to obtain + /// short-lived access tokens later. + /// </summary> + RefreshToken, + + /// <summary> + /// A (typically) short-lived token. + /// </summary> + AccessToken, + } + + /// <summary> + /// A message that carries some kind of token from the client to the authorization or resource server. + /// </summary> + internal interface IAuthorizationCarryingRequest : IDirectedProtocolMessage { + /// <summary> + /// Gets or sets the verification code or refresh/access token. + /// </summary> + /// <value>The code or token.</value> + string CodeOrToken { get; set; } + + /// <summary> + /// Gets the type of the code or token. + /// </summary> + /// <value>The type of the code or token.</value> + CodeOrTokenType CodeOrTokenType { get; } + + /// <summary> + /// Gets or sets the authorization that the token describes. + /// </summary> + IAuthorizationDescription AuthorizationDescription { get; set; } + } +} |