如何在WSO2 IS中链接saml服务提供者(addRPServiceProvider)和应用程序?

时间:2017-11-21 20:52:25

标签: soap openid saml-2.0 wso2is

使用此soap调用createApplication()

创建了一个应用程序
    <soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"         
    xmlns:xsd="http://org.apache.axis2/xsd" xmlns:xsd1="http://model.common.application.identity.carbon.wso2.org/xsd">
    <soapenv:Header/>
    <soapenv:Body>
     <xsd:createApplication>
     <xsd:serviceProvider>
        <xsd1:applicationName>travelocity.com</xsd1:applicationName>
        <xsd1:description>SaMLApp</xsd1:description>
     </xsd:serviceProvider>
  </xsd:createApplication>

使用此肥皂调用addRPServiceProvider()

添加了服务提供商
   <soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:xsd="http://org.apache.axis2/xsd" 
    xmlns:xsd1="http://dto.saml.sso.identity.carbon.wso2.org/xsd">
   <soapenv:Header/>
   <soapenv:Body>
    <xsd:addRPServiceProvider>
     <xsd:spDto><xsd1:assertionConsumerUrl>http://localhost:8080/travelocity.com/home.jsp</xsd1:assertionConsumerUrl>
        <xsd1:doSignAssertions>true</xsd1:doSignAssertions>
        <xsd1:doSignResponse>true</xsd1:doSignResponse>
        <xsd1:doSingleLogout>true</xsd1:doSingleLogout>
        <xsd1:issuer>sophos.com</xsd1:issuer>         
        <xsd1:nameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</xsd1:nameIDFormat>
        <xsd1:useFullyQualifiedUsername>true</xsd1:useFullyQualifiedUsername>
     </xsd:spDto>
  </xsd:addRPServiceProvider>

现在我应该如何通过调用updateApplication()来链接它们?更新应用程序soap调用的属性应该是什么?我提到this,但无法找出updateApplication()中的链接部分。

注意:我可以在WSO2 IS管理控制台Web UI上创建这些。我无法通过API调用创建它们。

1 个答案:

答案 0 :(得分:1)

将添加SAML应用程序作为服务提供商的入站身份验证配置。因此,当您调用updateApplication方法时,请使用您用于创建SAML应用程序的发行者名称(在您的案例中为travelocity.com)作为inboundAuthKey部分中的inboundAuthenticationConfig。如果您需要代码示例,请关注this