#10135 add idp to saml login

This commit is contained in:
Arthur 2022-08-24 11:19:40 -07:00
parent 219f2eee29
commit 12354ae5c6
2 changed files with 18 additions and 5 deletions

View File

@ -55,6 +55,10 @@ def get_auth_backend_display(name):
return AUTH_BACKEND_ATTRS.get(name, (name, None))
def get_saml_idps():
return getattr(settings, "SOCIAL_AUTH_SAML_ENABLED_IDPS", {}).keys()
class ObjectPermissionMixin:
def get_all_permissions(self, user_obj, obj=None):

View File

@ -41,12 +41,21 @@
{% if auth_backends %}
<h6 class="mt-4 mb-3">Or use a single sign-on (SSO) provider:</h6>
{% for name, display in auth_backends.items %}
{% for name, backend in auth_backends.items %}
{% if name == 'saml' %}
{% for idp in backend.idps %}
<h5>
{% if display.1 %}<i class="mdi mdi-{{ display.1 }}"></i>{% endif %}
<a href="{% url 'social:begin' backend=name %}" class="my-2">{{ display.0 }}</a>
{% if backend.icon_name %}<i class="mdi mdi-{{ backend.icon_name }}"></i>{% endif %}
<a href="{% url 'social:begin' backend=name %}?idp={{idp}}" class="my-2">{{ backend.display_name }} ({{idp}})</a>
</h5>
{% endfor %}
{% else %}
<h5>
{% if backend.icon_name %}<i class="mdi mdi-{{ backend.icon_name }}"></i>{% endif %}
<a href="{% url 'social:begin' backend=name %}" class="my-2">{{ backend.display_name }}</a>
</h5>
{% endif %}
{% endfor %}
{% endif %}
{# Login form errors #}