Программная настройка веб-приложения и WCF для использования STS (WIF)

Итак, я добавил очень простую службу asp.net и wcf для использования и STS для аутентификации, однако мне интересно, как я могу добиться того же, если настроить его программно.

Я знаю, что мне нужно иметь определенную информацию в web.config, я также вижу, что из моего клиента у меня есть доступ к пространству имен Microsoft.Identity.Configuration, к пространству имен... но, конечно, от этого до фактического настроенное приложение, если кто-то прошел это, я все уши

Первая и самая важная веха заключается в программной настройке использования sts, затем фактического адреса приложений (AudienceUrl и wsFederation->realm), затем раздела Certificate CertificateReference и trustIssuers.

ура

1 ответ

Вы должны будете динамически настроить необходимые модули (WSFederationAuthenticationModule и SessionAuthenticationModule) как часть создания конфигурации. Частично это потребует установки сертификата подписи на лету (помните, что его нужно будет установить на сервере, на котором находится RP, а также иметь правильные разрешения, чтобы RP мог получить доступ к закрытому ключу сертификата). Эта последняя часть была задана в этом вопросе: меняйте сертификаты службы WCF на лету, без простоев. Я не обращался к этому вопросу, но (FWIW) моя интуиция говорит мне, что вы не можете изменить сертификат на лету.

Суть в том, что я не думаю, что это можно сделать без значительных усилий, по крайней мере. Одним из решений, которое я недавно реализовал, чтобы сделать создание новых приложений RP довольно безболезненным, было создание пакета NuGet, который можно добавить в проект, который будет настраивать новое приложение в соответствии со стандартами организации (с использованием известного STS, сертификата отпечатка пальца и т. Д.),

@Rice Flour Cookies упоминают метаданные федерации, вам не обязательно нужны метаданные, но это помогает при автоматизации конфигурации.

Другие вопросы по тегам