def METHOD_NAME(
    module_target_sat,
    enable_external_auth_rhsso,
    rhsso_setting_setup,
    rh_sso_hammer_auth_setup,
    default_sso_host,
):
    """verify the hammer auth login using RHSSO auth source
    :id: 56c09a1a-d0e5-11ea-9024-d46d6dd3b5b2
    :expectedresults: hammer auth login should be suceessful for a rhsso user
    :CaseImportance: High
    """
    result = module_target_sat.cli.AuthLogin.oauth(
        {
            'oidc-token-endpoint': default_sso_host.oidc_token_endpoint,
            'oidc-client-id': default_sso_host.get_oidc_client_id(),
            'username': settings.rhsso.rhsso_user,
            'password': settings.rhsso.rhsso_password,
        }
    )
    assert f"Successfully logged in as '{settings.rhsso.rhsso_user}'." == result[0]['message']
    result = module_target_sat.cli.Auth.with_user(
        username=settings.rhsso.rhsso_user, password=settings.rhsso.rhsso_password
    ).status()
    assert (
        f"Session exists, currently logged in as '{settings.rhsso.rhsso_user}'."
        == result[0]['message']
    )
    task_list = module_target_sat.cli.Task.with_user(
        username=settings.rhsso.rhsso_user, password=settings.rhsso.rhsso_password
    ).list()
    assert len(task_list) >= 0
    with pytest.raises(CLIReturnCodeError) as error:
        module_target_sat.cli.Role.with_user(
            username=settings.rhsso.rhsso_user, password=settings.rhsso.rhsso_password
        ).list()
    assert 'Missing one of the required permissions' in error.value.message