Каковы последствия установки establishSecurityContext= "False", если я использую https?

моя служба WFC использует wsHttpBinding, настроенный с:

<security mode="TransportWithMessageCredential">
    <message establishSecurityContext="True" clientCredentialType="UserName"/>
    <transport clientCredentialType="None" proxyCredentialType="None"/>
</security>

один из наших партнеров пытается вызвать наши службы, используя библиотеку java Metro. У них есть этой

1 ответов


разница в том, что на конечной точке без SCT (маркер контекста безопасности) включен, обмен ключами и проверка должны выполняться за вызов, а не один раз и кэшироваться для сеанса, и только SCT передается в сообщениях вместо этого. SCTs основаны на симметричном ключе, что делает их гораздо более эффективными для подписания/шифрования сообщения. Использование SCT очень хорошо, когда клиент, как ожидается, сделает много вызовов подряд, потому что это облегчает необходимость делать обмен и проверка one off key каждый раз.

Я бы рекомендовал вам просто выставить другую конечную точку для клиентов, которые не поддерживают SCTs, и сказать им использовать это. Клиенты, которые могут использовать SCTs, вы указываете на конечную точку по умолчанию и сохраняете все преимущества, которые приходят с ней.

больше на эту тему, проверьте третий раздел документации WS-SecureConversation.