meumobi / infomobi

Ionic2 Employee App
3 stars 2 forks source link

allow expired password to request api #206

Closed vdias38 closed 6 years ago

vdias38 commented 6 years ago

Expected behaviour

Tell us what should happen

Actual behaviour

if password expired api returns 403 forbidden response should bypass this test to return 200 response Is done on following file sitebuilder/app/controllers/api/ApiController.php

Steps to reproduce

1. 2. 3.

Expected responses

vdias38 commented 6 years ago

you can patch the sitebuilder on prod to fix this issue

danconte72 commented 6 years ago

Solution on sitebuilder/app/controllers/api/ApiController.php change
FROM

protected function requireVisitorAuth(array $params = [])
    {
        $allowExpired = array_key_exists('allowExpired', $params)
            ? $params['allowExpired']
            : false;
        ...
    }

TO

protected function requireVisitorAuth(array $params = [])
    {
        $allowExpired = array_key_exists('allowExpired', $params)
            ? $params['allowExpired']
            : true;
        ...
    }
danconte72 commented 6 years ago

I've tested on INT and it worked
user with expired password

{
    "success": true,
    "token": "AAAA",
    "visitor": {
        "first_name": "teste",
        "last_name": "senha expirada",
        "email": "danconte72+45@gmail.com",
        "site": "teste.teste.teste"
    },
    "error": "password expired",
    "errors": [
        "password expired"
    ]
}

API before

{"error":"Forbidden Access"}    

API after

{
    "items": [
        {
            "order": 24,
            "created": 1520938863,
            "modified": 1520938865,
            "published": 1377123576,
            "is_published": true,
            "thumbnails": [],
            "groups": [],
            "notification_id": "",
            "guid": "tag:blogger.com,1999:blog-2859221166086548986.post-8124694280229660454",
            "link": "https://conteteconta.blogspot.com/2011/06/prologo.html",
            "description": "              Escrever. A minha primeira preocupação ao começar escrever era se seria em letra de forma (Garrafais ou em \"Caixa Alta\", como diziam minhas professoras de primário) ou em letra emendada (todos os posts aqui são escritos a mão e  depois digitados).             Optei pela segunda pois além de mais clássica e elegante, é a única que em minhas mãos.. (ou melhor em uma mão pois sou sinistromano) se torna legivel aos meros mortais, inclusive eu.            Esta conclusão me leva a um certo grupo da sociedade, os professores. Creio eu que devem saber ler em hebraico, russo, egípcio e grego antigo, runas irlandesas e kriptoniâno. Sério.        Numa prova (avaliação, teste) que fiz recentemente na faculdade, numa questão descritiva fui reler as respostas antes de entregar. Não consegui, incrível. Mas o mais incrível foi que acertei!     O que explica uma alteração minha num dito popular:          \"Escreveu, não leu? O professor dá um jeito.\"<br />Obs: Pra você que pensou: \"Não rimou\". Por favor me apresente um documento, lei, aparato, emenda, onde diga que todos os ditados populares devem rimar, que corrigirei a frase acima sem pestanejar.",
            "author": null,
            "medias": [],
            "_id": "5aa7af71b5a508b75f8b4567",
            "type": "articles",
            "site_id": 23,
            "parent_id": 97,
            "title": "Prólogo",
            "format": "html",
            "pubdate": 1377123576,
            "images": []
        }
     ]
}
danconte72 commented 6 years ago

Updated on Prod (meumobi.com) too