Ho chiesto in precedenza a question di utilizzare remote_api del motore di app con openID e la risposta ha funzionato bene, in modo sicuro e insicuro. Ad un certo punto, subito dopo, però, qualcosa in App Engine è cambiato, e la soluzione non funzionava più sicuro - vale a dire il seguenteSecure remote_api nel motore di app con OpenID
remote_api_stub.ConfigureRemoteDatastore(app_id=app_id, path='/remote_api', auth_func=auth_func, servername=host, secure=True)
smesso di funzionare (sempre tornando 302), e avevo bisogno di togliere l'argomento sicuro di ottenere funziona.
Il release of the 1.3.5 SDK ha promesso 'I comandi API remoti possono essere inviati su HTTPS o HTTP', il che mi ha confuso, poiché avevo l'impressione che fornire l'argomento 'secure = True' mi avesse già dato questo, basato su this discussion.
Il mio sospetto è che sia stato il rilascio di questa funzionalità a causare l'interruzione dell'argomento "sicuro". Quindi, la prima parte della mia domanda - stavo effettivamente eseguendo i comandi remote_api in modo sicuro usando l'argomento 'secure = True', prima del rilascio di 1.3.5?
Una volta che il cookie ha smesso di funzionare in modo sicuro, ho provato la soluzione di Nick Johnson elencata nella stessa domanda, ma anche con questo, non potrei fornire "secure = True", ottenendo la stessa risposta 302.
Cosa devo fare per eseguire remote_api in modo sicuro con openID? 1.3.5 include nuove funzionalità attorno a questo, e come posso usarle? Cheers,
Colin
Stai usando il mio hack o quello meno hacky di Nick? [http://blog.notdot.net/2010/06/Using-remote-api-with-OpenID-authentication] –
Ho provato entrambi - Ho lo stesso comportamento - l'impostazione 'secure = True' ha come risultato sempre un 302 - rimozione 'secure = True' tutto funziona correttamente. Ho 'sicuro: facoltativo' in app.yaml sul punto di accesso remote_api. Inizialmente utilizzavo il tuo hack con secure = True, quindi un giorno (attorno all'annuncio di pre-release 1.3.5) 302 è stato restituito. A questo punto ho provato il meno hacking hack di Nick, ma ha funzionato anche senza 'secure = True'. Sono abbastanza sicuro che non fosse un problema con il cookie, perché lo stesso cookie funzionava bene se 'secure = True' non era presente. – hawkett
openID sicuro non funziona ancora su google app engine. http://code.google.com/p/googleappengine/issues/detail?id=3586 – iamgopal