System\ServiceModel\Security\SymmetricSecurityProtocol.cs (36)
67this.Factory.SecurityTokenParameters.InitializeSecurityTokenRequirement(tokenRequirement);
68tokenRequirement.KeyUsage = this.Factory.SecurityTokenParameters.HasAsymmetricKey ? SecurityKeyUsage.Exchange : SecurityKeyUsage.Signature;
70if (this.Factory.SecurityTokenParameters.HasAsymmetricKey)
81if (this.Factory.ActAsInitiator)
87SecurityTokenProvider tokenProvider = this.Factory.SecurityTokenManager.CreateSecurityTokenProvider(tokenProviderRequirement);
89if (this.Factory.SecurityTokenParameters.HasAsymmetricKey)
103this.initiatorTokenAuthenticator = this.Factory.SecurityTokenManager.CreateSecurityTokenAuthenticator(tokenAuthenticatorRequirement, out outOfBandTokenResolver);
110if (this.Factory.ActAsInitiator)
128if (this.Factory.ActAsInitiator)
146if (this.Factory.ActAsInitiator)
152return this.Factory.RecipientAsymmetricTokenProvider;
171if (this.Factory.ActAsInitiator != true)
177return new SecureOutgoingMessageAsyncResult(message, this, provider, this.Factory.ApplyConfidentiality, this.initiatorTokenAuthenticator, correlationState, timeoutHelper.RemainingTime(), callback, state);
207if (this.Factory.ApplyIntegrity || securityHeader.HasSignedTokens)
209if (!this.Factory.ApplyIntegrity)
215if (Factory.ApplyConfidentiality || securityHeader.HasEncryptedTokens)
217if (!this.Factory.ApplyConfidentiality)
240int keyLength = Math.Max(128, this.Factory.OutgoingAlgorithmSuite.DefaultSymmetricKeyLength);
241CryptoHelper.ValidateSymmetricKeyLength(keyLength, this.Factory.OutgoingAlgorithmSuite);
245string wrappingAlgorithm = this.Factory.OutgoingAlgorithmSuite.DefaultAsymmetricKeyWrapAlgorithm;
261if (this.Factory.SecurityTokenParameters.HasAsymmetricKey)
265bool isAsymmetricTokenInMessage = SendSecurityHeader.ShouldSerializeToken(this.Factory.SecurityTokenParameters, MessageDirection.Input);
270token = CreateWrappedKeyToken(asymmetricToken, this.Factory.SecurityTokenParameters, (isAsymmetricTokenInMessage) ? SecurityTokenReferenceStyle.Internal : SecurityTokenReferenceStyle.External);
277tokenParameters = this.Factory.GetProtectionTokenParameters();
287SymmetricSecurityProtocolFactory factory = this.Factory;
310tokenParameters = this.Factory.GetProtectionTokenParameters();
319correlationTokenParameters = this.Factory.GetProtectionTokenParameters();
333SymmetricSecurityProtocolFactory factory = this.Factory;
338if (this.Factory.ActAsInitiator)
350securityHeader.ConfigureSymmetricBindingServerReceiveHeader(this.Factory.RecipientSymmetricTokenAuthenticator, this.Factory.SecurityTokenParameters, supportingAuthenticators);
354securityHeader.ConfigureSymmetricBindingServerReceiveHeader(this.Factory.RecipientAsymmetricTokenProvider.GetToken(timeoutHelper.RemainingTime()), this.Factory.SecurityTokenParameters, supportingAuthenticators);
355securityHeader.WrappedKeySecurityTokenAuthenticator = this.Factory.WrappedKeySecurityTokenAuthenticator;
357securityHeader.ConfigureOutOfBandTokenResolver(MergeOutOfBandResolvers(supportingAuthenticators, this.Factory.RecipientOutOfBandTokenResolverList));
390AttachRecipientSecurityProperty(message, signingToken, this.Factory.SecurityTokenParameters.HasAsymmetricKey, securityHeader.BasicSupportingTokens, securityHeader.EndorsingSupportingTokens, securityHeader.SignedEndorsingSupportingTokens,