Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. A user should be able to create/update/delete SSL certs for his account.
  2. Certificates can be searched by using either the certificate ID or the account ID.
  3. Attach/Remove a certificate from a loadbalancers which support SSL offload feature.
  4. Add support for Netscaler to use this feature.

References

...

  • The SSL offload will be defined as a new Capability as SslOffload in Network.java static class Capability
  • NetscalerElement when checking for canHandleLbRules will check for SSL rule and respond accordingly
  • LoadBalancingRule will have a new static class LbSslCert and will have a list List<LbSslCert> for holding the certificate(s)
  • Wiki Markup
    {{LoadBalancerTO}} will have a new parameter for passing certificate information and an array {{SslCertsTO\[\]}} for holding the certificates.

The loadbalancign rule will have a new subclass for SSL certs

Code Block
titleLoadBalancingRule.java
borderStylesolid
// rule for SSL certificates
public class LoadBalancingRule { 
 ....

  public static class LbSslCert()
  {
    String cert;
    String key;
    String password;
    boolean _revoke;

    public LbSslCert(cert,key,password) {}
  
  }

  public void setSslCerts(List<SslCert> certs){}
  public void getSslCerts(List<SslCert> certs){}
...
}

...

Code Block
titleLoadBalancerTO.java
borderStylesolid
// TO for SSL certificates
public class LoadBalancerTO { 
 ....
  public SslCertsTO[] sslCerts;

  public static class SslCertTO()
  {
    String cert;
    String key;
    String password;
    boolean _revoke;

    public LbSslCert(cert,key,password) {}
  
  }

...
}

New tables

ssl_certs(id, uuid, account_id, cert, key, password)

...

  • certificateid: Optional : The id of the certificate to remove from this rule.

UI flow

The certificates can be accessed as a tab on the Accounts page.

Add Certificate

Image Added

List Certificates

Image Added

Certificate details

Image Added Right now, this feature will only be available via the API. UI support is not yet scoped.

IP Clearance

No external dependecies are being added for this feature. All code will be developed within Cloudstack’s scope.