Click here to Skip to main content
16,020,343 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
In one of my service I am using wsHttpBinding.

I am using certificate(on both side, server as well as client) as clientCredentialType.so, this is a type of asymmetric binding.

I have also kept establishsecuritycontext = "True"

Now as per what I have read about establishsecuritycontext, when we keep this as "True" then a security context token (SCT) is generated through an initial exchange between caller and service and this token is used to authorize and secure subsequent message exchanges.

My question is if SCT will be used to secure message then what is the role of private and public key of certificate.

As per what i understand both keys will be used to encrypt and sign the message then do we really require establishsecuritycontext = "True"
Posted

1 solution

If the token is set to false then, key exchange and validation will be done per call as opposed to being done once and cached for the session and only a SCT passed around in the messages instead.

SCTs are based on a symmetric key which makes them much more efficient for signing/encrypting the message. The use of a SCT is very good when the client is expected to make many calls in succession because it alleviates the need to do the exchange and validation of a one off key every time.

But it should be kept in mind it gives the benefit only if Channel is not being closed and created on each call also it has some issues with SSL and load balancer in place
 
Share this answer
 
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900