Esempio n. 1
0
def start_authorizing(request, key):
    """Get the initial access token and send the user to authorize it"""
    prosthetic = get_object_or_404(Prosthetic, id=key)
    wrangler = prosthetic.wrangler()

    try:
        token = wrangler.get_request_token()
        # Save the token ready for the callback
        try:
            token = RequestToken.objects.get(oauth_key=token.key)
            logging.error("request token for key already exists!")
            token.delete()
        except RequestToken.DoesNotExist:
            pass

        request_token = RequestToken(oauth_key=token.key,
                                     oauth_secret=token.secret,
                                     prosthetic=prosthetic)
        request_token.save()

        callback_url = "http://%s/oauth_callback/" % settings.LOCAL_SERVER

        start = wrangler.authorize_request_token_url(token, callback_url)
        return redirect(start)
    except urlfetch.DownloadError, e:
        return render_error(request, "Can't connect to API server: %s" % (e))
Esempio n. 2
0
 def save_request_token(self,
                        client_key,
                        request_token,
                        callback,
                        realm=None,
                        secret=None):
     token = RequestToken(request_token,
                          callback,
                          secret=secret,
                          realm=realm)
     token.client = Client.query.filter_by(client_key=client_key).one()
     db_session.add(token)
     db_session.commit()
def save_request_token(token, req):
    assert isinstance(req, oauthlib.common.Request)
    rt = token['oauth_token']
    rts = token['oauth_token_secret']
    client = req.client
    assert type(client) is Client, type(client)
    assert isinstance(req.redirect_uri, str)  # py3
    t = RequestToken(client=req.client,
                     token=rt,
                     secret=rts,
                     redirect_uri=req.redirect_uri,
                     realms=client.default_realms)  # ??
    request_tokens.append(t)
Esempio n. 4
0
    def save_request_token(self,
                           client_key,
                           request_token,
                           callback,
                           realm=None,
                           secret=None):
        client = Client.query(Client.client_key == client_key).get()

        if client:
            token = RequestToken(token=request_token,
                                 callback=callback,
                                 secret=secret,
                                 realm=realm,
                                 client=client.key)
            token.put()
Esempio n. 5
0
    def save_request_token(self,
                           client_key,
                           request_token,
                           callback,
                           realm=None,
                           secret=None):
        client = Client.find_one({'client_key': client_key})

        if client:
            token = RequestToken(request_token,
                                 callback,
                                 secret=secret,
                                 realm=realm)
            token.client_id = client['_id']

            RequestToken.insert(token)
 def setUp(self):
     self.user = User(username='******', password='******')
     self.client = Client(user=self.user,
                          redirect_uris=[REDIRECT_URI],
                          realms=['read'],
                          client_key=CONSUMER_KEY,
                          client_secret=CONSUMER_SECRET)
     self.request_token = RequestToken(client=self.client,
                                       token=REQUEST_TOKEN,
                                       secret=REQUEST_TOKEN_SECRET,
                                       redirect_uri=REDIRECT_URI,
                                       realms=['read'],
                                       user=self.user)
     self.access_token = AccessToken(client=self.client,
                                     user=self.user,
                                     realms=[REDIRECT_URI],
                                     token=ACCESS_TOKEN,
                                     secret=ACCESS_TOKEN_SECRET)
     self.nonce = Nonce(client_key=self.client.client_key,
                        timestamp=TIMESTAMP,
                        nonce=NONCE,
                        request_token=REQUEST_TOKEN,
                        access_token=ACCESS_TOKEN)