我创建了一个自定义联合身份验证器,并在名为“kbank”的身份提供程序中对其进行配置。
如何配置默认情况下让所有服务提供商使用此身份提供商,而无需为每个服务提供商单独指定。因为在API Manager中,每个应用程序都是作为服务提供者创建的,所以我们的系统中会有很多并且不断增加的服务提供者。
在服务提供商配置页面中,我可以看到“默认”有一个选项,但我不知道如何指定默认值。
非常感谢。
答案 0 :(得分:0)
您可以使用IS_HOME / repository / conf / identity中的 application-authentication.xml 指定默认验证器或默认序列。您可以使用<Sequences>
部分更改此内容。
如下所示,使用BasicAuthenticator将默认序列设置为单步验证序列
<Sequences>
<!-- Default Sequence. This is mandatory -->
<Sequence appId="default">
<Step order="1">
<Authenticator name="BasicAuthenticator"/>
</Step>
</Sequence>
</Sequences>
您可以修改它以使用任何身份验证器作为默认值。您需要指定验证器的名称。
答案 1 :(得分:0)
感谢这个post,我的问题的解决方案是我必须修改<APIM_Home>\repository\conf\identity\service-providers\default.xml
,如下所示
<ServiceProvider>
<ApplicationID>1</ApplicationID>
<ApplicationName>default</ApplicationName>
<Description>Default Service Provider</Description>
<InboundAuthenticationConfig>
<InboundAuthenticationRequestConfigs>
<InboundAuthenticationRequestConfig>
<InboundAuthKey>default</InboundAuthKey>
<InboundAuthType></InboundAuthType>
<Properties></Properties>
</InboundAuthenticationRequestConfig>
</InboundAuthenticationRequestConfigs>
</InboundAuthenticationConfig>
<LocalAndOutBoundAuthenticationConfig>
<AuthenticationSteps>
<AuthenticationStep>
<StepOrder>1</StepOrder>
<FederatedIdentityProviders>
<IdentityProvider>
<IdentityProviderName>kbank</IdentityProviderName>
<IsEnabled>true</IsEnabled>
<FederatedAuthenticatorConfigs>
<FederatedAuthenticatorConfig>
<Name>MyAuthenticator</Name>
<IsEnabled>true</IsEnabled>
</FederatedAuthenticatorConfig>
</FederatedAuthenticatorConfigs>
<DefaultAuthenticatorConfig>MyAuthenticator</DefaultAuthenticatorConfig>
<JustInTimeProvisioningConfig>
<UserStoreClaimUri></UserStoreClaimUri>
<ProvisioningUserStore>PRIMARY</ProvisioningUserStore>
<IsProvisioningEnabled>true</IsProvisioningEnabled>
</JustInTimeProvisioningConfig>
</IdentityProvider>
</FederatedIdentityProviders>
<SubjectStep>true</SubjectStep>
<AttributeStep>true</AttributeStep>
</AuthenticationStep>
</AuthenticationSteps>
</LocalAndOutBoundAuthenticationConfig>
<RequestPathAuthenticatorConfigs></RequestPathAuthenticatorConfigs>
<InboundProvisioningConfig></InboundProvisioningConfig>
<OutboundProvisioningConfig></OutboundProvisioningConfig>
<ClaimConfig>
<AlwaysSendMappedLocalSubjectId>true</AlwaysSendMappedLocalSubjectId>
</ClaimConfig>
<PermissionAndRoleConfig></PermissionAndRoleConfig>
</ServiceProvider>