예제 #1
0
파일: auth.py 프로젝트: pasala91/test
def email_missing_links(org_id, actor_id, provider_key, **kwargs):
    try:
        org = Organization.objects.get(id=org_id)
        actor = User.objects.get(id=actor_id)
        provider = manager.get(provider_key)
    except (Organization.DoesNotExist, User.DoesNotExist, ProviderNotRegistered) as e:
        logger.warning("Could not send SSO link emails: %s", e)
        return

    member_list = OrganizationMember.objects.filter(
        organization=org, flags=F("flags").bitand(~OrganizationMember.flags["sso:linked"])
    )
    for member in member_list:
        member.send_sso_link_email(actor, provider)
예제 #2
0
파일: auth.py 프로젝트: bweathers3/sentry
def email_missing_links(org_id, configurer_id, provider_key, **kwargs):
    try:
        org = Organization.objects.get(id=org_id)
        configurer = User.objects.get(id=configurer_id)
        provider = manager.get(provider_key)
    except(Organization.DoesNotExist, User.DoesNotExist, ProviderNotRegistered) as e:
        logger.warning('Could not send SSO link emails: %s', e)
        return

    member_list = OrganizationMember.objects.filter(
        organization=org,
        flags=~getattr(OrganizationMember.flags, 'sso:linked'),
    )
    for member in member_list:
        member.send_sso_link_email(configurer, provider)
예제 #3
0
파일: auth.py 프로젝트: Kayle009/sentry
def email_missing_links(org_id, actor_id, provider_key, **kwargs):
    try:
        org = Organization.objects.get(id=org_id)
        actor = User.objects.get(id=actor_id)
        provider = manager.get(provider_key)
    except(Organization.DoesNotExist, User.DoesNotExist, ProviderNotRegistered) as e:
        logger.warning('Could not send SSO link emails: %s', e)
        return

    member_list = OrganizationMember.objects.filter(
        organization=org,
        flags=F('flags').bitand(~OrganizationMember.flags['sso:linked']),
    )
    for member in member_list:
        member.send_sso_link_email(actor, provider)
예제 #4
0
파일: auth.py 프로젝트: Kayle009/sentry
def email_unlink_notifications(org_id, actor_id, provider_key):
    try:
        org = Organization.objects.get(id=org_id)
        actor = User.objects.get(id=actor_id)
        provider = manager.get(provider_key)
    except(Organization.DoesNotExist, User.DoesNotExist, ProviderNotRegistered) as e:
        logger.warning('Could not send SSO unlink emails: %s', e)
        return

    # Email all organization users, even if they never linked their accounts.
    # This provides a better experience in the case where SSO is enabled and
    # disabled in the timespan of users checking their email.
    member_list = OrganizationMember.objects.filter(organization=org).select_related('user')

    for member in member_list:
        member.send_sso_unlink_email(actor, provider)
예제 #5
0
파일: auth.py 프로젝트: pasala91/test
def email_unlink_notifications(org_id, actor_id, provider_key):
    try:
        org = Organization.objects.get(id=org_id)
        actor = User.objects.get(id=actor_id)
        provider = manager.get(provider_key)
    except (Organization.DoesNotExist, User.DoesNotExist, ProviderNotRegistered) as e:
        logger.warning("Could not send SSO unlink emails: %s", e)
        return

    # Email all organization users, even if they never linked their accounts.
    # This provides a better experience in the case where SSO is enabled and
    # disabled in the timespan of users checking their email.
    member_list = OrganizationMember.objects.filter(organization=org).select_related("user")

    for member in member_list:
        member.send_sso_unlink_email(actor, provider)
예제 #6
0
    def test_send_sso_unlink_email(self, builder):
        user = self.create_user(email="*****@*****.**")
        user.password = ""
        user.save()

        organization = self.create_organization()
        member = self.create_member(user=user, organization=organization)
        provider = manager.get("dummy")

        with self.options({"system.url-prefix": "http://example.com"}), self.tasks():
            member.send_sso_unlink_email(user, provider)

        context = builder.call_args[1]["context"]

        assert context["organization"] == organization
        assert context["provider"] == provider

        assert not context["has_password"]
        assert "set_password_url" in context
예제 #7
0
    def test_send_sso_unlink_email(self, builder):
        user = self.create_user(email='*****@*****.**')
        user.password = ''
        user.save()

        organization = self.create_organization()
        member = self.create_member(user=user, organization=organization)
        provider = manager.get('dummy')

        with self.options({'system.url-prefix': 'http://example.com'}), self.tasks():
            member.send_sso_unlink_email(user, provider)

        context = builder.call_args[1]['context']

        assert context['organization'] == organization
        assert context['provider'] == provider

        assert not context['has_password']
        assert 'set_password_url' in context
    def test_send_sso_unlink_email(self, builder):
        user = self.create_user(email='*****@*****.**')
        user.password = ''
        user.save()

        organization = self.create_organization()
        member = self.create_member(user=user, organization=organization)
        provider = manager.get('dummy')

        with self.options({'system.url-prefix': 'http://example.com'}), self.tasks():
            member.send_sso_unlink_email(user, provider)

        context = builder.call_args[1]['context']

        assert context['organization'] == organization
        assert context['provider'] == provider

        assert not context['has_password']
        assert 'set_password_url' in context
예제 #9
0
    def get_provider(self):
        from sentry.auth import manager

        return manager.get(self.provider, **self.config)
예제 #10
0
    def get_provider(self):
        from sentry.auth import manager

        return manager.get(self.provider, **self.config)