saml2: WIP X509 certificate auth stuff

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
(cherry picked from commit f7d409e0f4d2b6f56ec82ae339eff5f477e4a832)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
utils: add methods to save and load public and private keys

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAMLUtils: Fix NPE incase signature is generated with a null privateKey

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
utils: add missing string to the url in generate saml signature method

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAML2AuthManager: add new methods to the interface

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAML2AuthManagerImpl: create or load keystore dao

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
GetServiceProviderMetaDataCmd: in metadata use SP's own X509 certs

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAML2LoginAPIAuthenticatorCmd: add signature on redirect url

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAML2LoginAPIAuthenticatorCmd: Don't support HTTP artifact binding

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
SAMLUtils: put name id policy on authnrequest

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>