2016-05-05 3 views
1

В shibboleth у нас есть PasswordAuthnConfiguration.Shibboleth - Как настроить несколько конфигураций аутентификации паролей

Я хочу иметь несколько узлов PasswordAuthnConfiguration, которые будут выбраны в зависимости от SP.

Я могу выбрать способ проверки подлинности на основе SP от replying party.xml , но что, если я хочу иметь несколько конфигураций для PasswordAuthnConfiguration и picking в зависимости от SP.

например ,,

SP1 -. PasswordConf 1

SP2 - PasswordConf 2

ответ

1

Я получил решение, если кто-то нуждается в то же решение.

система/потоков/AuthN продублировать ниже потоков с именем вашего выбора

паролем AuthN-beans.xml паролем AuthN-flow.xml

как

passworda-authn-beans.xml passworda-authn-flow.xml

иметь отдельный набор конфигураций DataSource для нового потока редактирования

passworda-authn-beans.xml 
    <import resource="../../../conf/authn/passworda-authn-config.xml" /> 

иметь отдельную страницу входа для нового потока редактирования

passworda-authn-flow.xml 
    <view-state id="DisplayUsernamePasswordPage" view="mylogin"> 

дублировать страницу login.vm и персонализировать его.

теперь каждый поток аутентификации идентифицируется уникальным именем как поток паролей на основе AuthN является «Password» поэтому мы должны определить имя для нашего нового AuthN потока позволяет называть его «MyPassword»

отредактировать Файловая система **/CONF/WebFlow-config.xml ** добавить строку ниже

<webflow:flow-location id="authn/Mypassword" path="../system/flows/authn/mypassword-authn-flow.xml" /> 

теперь настройки конфигурации для источника данных для нового потока AuthN

перейти к Conf/AuthN дублировать файл пароль AuthN-config.xml для MyPassword-AuthN-config.xml

установки вашего источник данных для настройки пользователей источника данных для аутентификации

включить новый поток в conf/idp.свойства

idp.authn.flows = Пароль | MyPassword

настроить новый AuthN поток к специфическому customerà источника данных в

конф/проверяющей party.xml

<bean parent="RelyingPartyByName" c:relyingPartyIds="urn_ping_saml"> 
      <property name="profileConfigurations"> 
       <list> 
       <bean parent="Shibboleth.SSO" p:postAuthenticationFlows="attribute-release" /> 
       <ref bean="SAML1.AttributeQuery" /> 
       <ref bean="SAML1.ArtifactResolution" /> 
       <bean parent="SAML2.SSO" p:authenticationFlows="#{{'Mypassword'}}" p:postAuthenticationFlows="attribute-release" p:encryptAssertions="false"/> 
       <ref bean="SAML2.ECP" /> 
       <ref bean="SAML2.Logout" /> 
       <ref bean="SAML2.AttributeQuery" /> 
       <ref bean="SAML2.ArtifactResolution" /> 
       <ref bean="Liberty.SSOS" /> 
       </list> 
      </property> 
     </bean> 
Смежные вопросы