In the identity server, a service provider represents the application which
uses the Identity Server as an Identity Provider.

In some cases, Identity Server needs to validate the identity of the
application to make sure the authentication/authorization requests are
coming from the legitimate application.

*How is this done now?*

The application certificate should be imported to the keystore file and the
alias should be mentioned in the service provider so that the service
provider can validate the signature against the certificate identified by
that alias.

*Why is this needs to be improved?*

1) keystore file resides in the file system. Therefore in a clustered
deployment, either the certificate should be added to all the nodes or the
keystore file should be synced.

2) The server needs a restart after importing a certificate.

*What is the solution?*

The certificate should be stored in the database so that it is shared and a
restart is not needed.

*High-level design/UX decisions*

1) The SP UI will have a new text area to enter the certificate in PEM
format.

2) The certificate will be stored in the SP_APP table. A new column will be
added.

*REASON*:

Service provider --> certificate is a 1:1 relationship.

3) An interface will be introduced to abstract out the certificate handling
of the SP. Two implementations will be there to support the current
behavior and the proposed behavior.

4) Current behavior will be deprecated.

5) Choosing between the two implementations not explicit for the users, so
a configuration will not be provided. If a certificate is not available in
the database Identity Server will fall back to the current approach.

*REASON*:

1. This feature is about changing an internal implementation. So the users
should not worry about it.



Please share your thoughts.




-- 
*Best Regards*

*Rushmin Fernando*
*Technical Lead*

WSO2 Inc. <http://wso2.com/> - Lean . Enterprise . Middleware

mobile : +94775615183
_______________________________________________
Architecture mailing list
Architecture@wso2.org
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to