| One of the things my business needs, but I cannot find a SaaS solution for is: Multi-tenant (each of my customers gets a fully separate directory, with access to all tenants for our admins) SAML and OAuth (customers can set up SAML themselves via the SaaS interface, or we set the SP up for them) Rule based group assignment based on SAML attribute evaluation (e.g. assign users to this group if the attribute X = Y) APIs to manage users, groups, organisations (tenants) We've built something using Okta, but all our customer users are in one Directory/Tenant. Auth0 nearly gets there with Organisations but can't help with the sub-groups and rule based management. For context, we have an education product and customers are districts or schools, and the sub-groups are typically schools and/or classes or groups of users (e.g. seniors or juniors). We also need to support SAML Federations like InCommon, OpenAthens, UK Access Management Federation which makes the challenge harder (these federations want a single SP to which many IDPs authenticate) for Universities. None of the modern platforms support this. If anyone has found an out of the box solution for this, I'd love to hear about it. |
> Multi-tenant (each of my customers gets a fully separate directory, with access to all tenants for our admins)
Yup.
> SAML and OAuth (customers can set up SAML themselves via the SaaS interface, or we set the SP up for them)
You'd have to build an interface using our APIs for this. Not available out of the box, but we do have it in the general roadmap (https://github.com/fusionauth/fusionauth-issues/issues/91 is the tracking issue).
> Rule based group assignment based on SAML attribute evaluation (e.g. assign users to this group if the attribute X = Y)
You could do this with Lambda HTTP Connect (a paid feature) or webhooks (a free feature. https://fusionauth.io/docs/v1/tech/lambdas/#using-lambda-htt... has more
> APIs to manage users, groups, organisations (tenants)
Yup.
> SAML Federations like InCommon...
Hmmm. We have an open issue for supporting this, but I'm not sure what is involved. If it is straight SAML, it should work, but SAML is pretty ... multi-facted so testing would be needed.