Esempio n. 1
0
        MessageProtections?IChannelBindingElement.ProcessOutgoingMessage(IProtocolMessage message)
        {
            ITamperResistantProtocolMessage signedMessage = message as ITamperResistantProtocolMessage;

            if (signedMessage != null)
            {
                signedMessage.Signature = MessageSignature;
                return(MessageProtections.TamperProtection);
            }

            return(null);
        }
Esempio n. 2
0
        MessageProtections?IChannelBindingElement.ProcessIncomingMessage(IProtocolMessage message)
        {
            ITamperResistantProtocolMessage signedMessage = message as ITamperResistantProtocolMessage;

            if (signedMessage != null)
            {
                if (signedMessage.Signature != MessageSignature)
                {
                    throw new InvalidSignatureException(message);
                }
                return(MessageProtections.TamperProtection);
            }

            return(null);
        }
        /// <summary>
        /// Fills out the secrets in a message so that signing/verification can be performed.
        /// </summary>
        /// <param name="message">The message about to be signed or whose signature is about to be verified.</param>
        private void SignatureCallback(ITamperResistantProtocolMessage message)
        {
            var oauthMessage = message as ITamperResistantOAuthMessage;

            try {
                Logger.Debug("Applying secrets to message to prepare for signing or signature verification.");
                oauthMessage.ConsumerSecret = this.TokenManager.GetConsumerSecret(oauthMessage.ConsumerKey);

                var tokenMessage = message as ITokenContainingMessage;
                if (tokenMessage != null)
                {
                    oauthMessage.TokenSecret = this.TokenManager.GetTokenSecret(tokenMessage.Token);
                }
            } catch (KeyNotFoundException ex) {
                throw new ProtocolException(OAuthStrings.ConsumerOrTokenSecretNotFound, ex);
            }
        }
Esempio n. 4
0
		/// <summary>
		/// Fills out the secrets in a message so that signing/verification can be performed.
		/// </summary>
		/// <param name="message">The message about to be signed or whose signature is about to be verified.</param>
		private void SignatureCallback(ITamperResistantProtocolMessage message) {
			var oauthMessage = message as ITamperResistantOAuthMessage;
			try {
				Logger.Channel.Debug("Applying secrets to message to prepare for signing or signature verification.");
				oauthMessage.ConsumerSecret = this.GetConsumerSecret(oauthMessage.ConsumerKey);

				var tokenMessage = message as ITokenContainingMessage;
				if (tokenMessage != null) {
					oauthMessage.TokenSecret = this.TokenManager.GetTokenSecret(tokenMessage.Token);
				}
			} catch (KeyNotFoundException ex) {
				throw new ProtocolException(OAuthStrings.ConsumerOrTokenSecretNotFound, ex);
			}
		}