2015-06-04 2 views
0

Я хочу реализовать систему единого входа с протоколом SAML 2.0 с использованием WSO2 IS как поставщика удостоверений. Я проанализировал образец SSO https://docs.wso2.com/display/IS500/Configuring+Single+Sign-On+with+SAML+2.0, чтобы узнать, как реализовать сторону поставщика услуг для генерации запроса на аутентификацию SAML 2.0. AFAIK еще одним способом реализации SAML SP будет использовать OpenAM, OpenSAML или Shibboleth. Но все эти методы требуют знания программирования у поставщика услуг для его реализации.Протокол SAML 2.0, открытый как веб-служба

Таким образом, мой вопрос: Есть ли какая-либо служба веб-администрирования в WSO2 IS, чтобы облегчить реализацию SAML SP? Я обнаружил SAML2SSOAuthenticationService.wsdl, но я не уверен, как это работает и нужны ли мне некоторые другие службы администрирования для реализации желаемого решения.

ответ

0

Вы можете использовать https://localhost:9443/services/IdentityApplicationManagementService администратор службы createApplication метод создания поставщика услуг.

или Вы можете создать поставщика услуг, используя файлы конфигурации.

пожалуйста, следуйте setps ниже

1) Откройте /repository/conf/security/sso-idp-config.xml файл и добавьте следующую конфигурацию к нему. Это добавляет приложение travelocity в качестве поставщика услуг.

<ServiceProvider> 
    <Issuer>travelocity.com</Issuer> 
    <AssertionConsumerService>http://localhost:8080/travelocity.com/home.jsp</AssertionConsumerService> 
    <SignAssertion>false</SignAssertion> 
    <SignResponse>false</SignResponse> 
    <EnableAttributeProfile>true</EnableAttributeProfile> 
    <IncludeAttributeByDefault>true</IncludeAttributeByDefault> 
    <EnableSingleLogout>true</EnableSingleLogout> 
    <Claims> 
     <Claim>http://wso2.org/claims/givenName</Claim> 
    </Claims> 
    <LogoutUrl></LogoutUrl> 
    <EnableAudienceRestriction>false</EnableAudienceRestriction> 
    <ConsumingServiceIndex>2104589</ConsumingServiceIndex> 
</ServiceProvider> 

2) Создайте файл с именем travelocity.com.xml в каталоге/хранилище/CONF/идентичность/сервис-провайдеры

3) Добавьте следующие конфигурации в файл travelocity.com.xml вы создано. Это добавляет необходимые конфигурации SAML к поставщику услуг Travelocity

<ServiceProvider> 
    <ApplicationID>3</ApplicationID> 
    <ApplicationName>travelocity.com</ApplicationName> 
    <Description>travelocity Service Provider</Description> 
    <IsSaaSApp>true</IsSaaSApp> 
    <InboundAuthenticationConfig> 
     <InboundAuthenticationRequestConfigs> 
      <InboundAuthenticationRequestConfig> 
       <InboundAuthKey>travelocity.com</InboundAuthKey> 
       <InboundAuthType>samlsso</InboundAuthType> 
       <Properties></Properties> 
      </InboundAuthenticationRequestConfig> 
     </InboundAuthenticationRequestConfigs> 
    </InboundAuthenticationConfig> 

    <LocalAndOutBoundAuthenticationConfig> 
     <AuthenticationSteps> 
      <AuthenticationStep> 
       <StepOrder>1</StepOrder> 
       ­­<LocalAuthenticatorConfigs> 
        <LocalAuthenticatorConfig> 
         <Name>BasicAuthenticator</Name> 
         <DisplayName>basicauth</DisplayName> 
         <IsEnabled>true</IsEnabled> 
        </LocalAuthenticatorConfig> 
       </LocalAuthenticatorConfigs>­­> 
       <FederatedIdentityProviders> 
        <IdentityProvider> 
         <IdentityProviderName>identityProviderIDP_IS</IdentityProviderName> 
         <IsEnabled>true</IsEnabled> 
         <DefaultAuthenticatorConfig> 
          <FederatedAuthenticatorConfig> 
           <Name>SAMLSSOAuthenticator</Name> 
           <DisplayName>samlsso</DisplayName> 
           <IsEnabled>true</IsEnabled> 
          </FederatedAuthenticatorConfig> 
         </DefaultAuthenticatorConfig> 
        </IdentityProvider> 
       </FederatedIdentityProviders> 
       <SubjectStep>true</SubjectStep> 
       <AttributeStep>true</AttributeStep> 
      </AuthenticationStep> 
     </AuthenticationSteps> 
    </LocalAndOutBoundAuthenticationConfig> 
    <RequestPathAuthenticatorConfigs></RequestPathAuthenticatorConfigs> 
    <InboundProvisioningConfig></InboundProvisioningConfig> 
    <OutboundProvisioningConfig></OutboundProvisioningConfig> 
    <ClaimConfig> 
     <AlwaysSendMappedLocalSubjectId>true</AlwaysSendMappedLocalSubjectId> 
     <LocalClaimDialect>true</LocalClaimDialect><ClaimMappings><ClaimMapping><LocalClaim><ClaimUri>http://wso2.org/claims/givenname</ClaimUri></LocalClaim><RemoteClaim><ClaimUri>http://wso2.org/claims/givenName</ClaimUri>ClaimUri></RemoteClaim><RequestClaim>true</RequestClaim></ClaimMapping></ClaimMappings></ClaimConfig>  
    <PermissionAndRoleConfig></PermissionAndRoleConfig> 
</ServiceProvider> 

смотрите по этой ссылке для получения более подробной информации [1] https://docs.wso2.com/display/IS500/Adding+a+Service+Provider+and+Identity+Provider+Using+Configuration+Files