I am using Django for my website/app and I want to integrate quickbooks. I wasn't sure whether you are using Oauth version 1.0 or 2.0. Also the documentation is more specific for PHP but the django-oauth-toolkit documentation I THINK is more geared towards hosting your own Oauth than connecting as a client. So although my main question is what version are you using any links to where I could read up on connecting with django would be greatly appreciated. I do have PHP still setup but I have been converting all my modules to django (python) and I was trying to avoid that. I thought reading the IETF protocol might help my understanding but there is the older version 1.0 by the original author and then the newer 2.0 that is currently supported. He does seem to have a pretty good beginner's guide but at the same time he seems a little 'disgruntled', if that's the right word, about the newer version. Also I believe the django-oauth-toolkit is version 2.0 protocol.
It's OAuth v1.0.
They have a bit of documentation here:
https://developer.intuit.com/docs/0100_quickbooks_online/0100_essentials/0085_develop_quickbooks_apps/0004_authentication_and_authorization
I would highly recommend you find an existing OAuth library for Django/Python - writing your own is likely going to be a painful process.
Related
I am a nodejs developer but currently migrating to django(being a python lover). I am trying to implement OAuth2 in Django Rest Framework but I don't know how to start.
In nodejs, there is passportjs library which is well maintained, and it's got stratigies for every possible authentication type. What about django rest framework ? User name/password auth seems straightforward but oauth2 is not well covered.
In DRF docs here, It mentions two libraries for oauth. The first is django-oauth-toolkit which is well maintained but after going through docs, I didn't seem to understand much, it doesn't even talk about googl/facebook oauth. I am not sure what it is used for, anyway. The second one is django-rest-framework-social-oauth2 which seems to be straightforward but it's not been touched for over a year, it's probably not maintained any more.
So, How do you guys do oauth2 in your DRF projects ?
I hope you have solved this already. You can check my repo: It offers a simple way of authenticating against major ouath2 vendors. Here it is https://github.com/wagnerdelima/drf-social-oauth2.
You can also check my other repo https://github.com/wagnerdelima/facebook_setup. It integrates https://github.com/wagnerdelima/drf-social-oauth2 as an example to make it easy for newcomers.
I am a beginner in the world of the OAuth2.0 and OpenID Protocols. I would like to implement a custom server - provider for multiple applications. So, to use it for Single Sign-On (SSO). I would like to work with python. Till now I have found four packages, for an OAuth2.0 and an OpenID Connect server implementation, in Python: pyoidc, django-oidc-provider, Django OAuth Toolkit (DOT) by OAuthlib and Authlib. I tried to read and understand pyoidc, but it was not so helpful and easy, basic things were missing. I have tried django-oidc-provider and I was really satisfied, and the whole implementation was really easy. So, after those trials, I am left with Django OAuth Toolkit (by OAuthlib) and Authlib. Has anyone tried them? Are these packages the same? Is Authlib an updated version of the OAuthlib library? The only information I know till now, is that Flask-OAuthlib is deprecated, and Authlib is was its new version.
*Every answer or advice or personal experience would be really helpful and always appreciated!
Thank you again for your help.
After some research, I concluded to work generally with JWTs. As before, I would like to work with a GraphQL API, so I am searching for solutions about JWT authentication on it. I maybe use Passport.js (passport-jwt) or something else for Python. All the libraries mentioned above possibly will be not used.
I will just redirect the user to my main application, authenticate them with JWT, and then return the JWT back to the application. In the future and after deployment, I might also implement an OAuth2.0 provider for my website. Although those packages did not really help me, I would recommend Django OAuth Toolkit (DOT) and django-oidc-provider to others. But, also I learned that django-oidc-provider only supports the implementation of a small and simple OAuth2.0 provider. Django OAuth Toolkit comes with lots of options for implementing an advanced OAuth2.0 Authentication Server (AS), including Authorization Code flow with PKCE (Proof Key with Code Exchange), which is the most secure flow. It is also scalable and has great documentation with lots of customizations if you want.
*I sent an email to the support of Authlib, and of course no one has answered to me after a week.
Has anyone of you already tried integrating with FrontierLink?
Found in their documentation
5.2 Building the FrontierLink Client
5.2.1 SOAP Client Environment
You must adhere to the following minimum requirements for SOAP clients in order to successfully integrate with FrontierLink:
XML 1.0
SOAP 1.1
HTTP 1.0 (1.1 preferred)
SSL based connection authenticated via X.509 Digital Certificates
WSDL1.1
A Web Services toolkit supporting WSDL 1.1 is recommended to aid your development.
In their documentation there is no sample on how to get started. I am really sorry for asking this question but what would be the code for connecting to FrontierLink? Thanks! Hoping for someone who can help :) Thank you once again!
May you please show us an example of the FrontierLink API? so that I may be able to help you further?
Just in a nutshell with what I understand when using SOAP api, you will have to call the APIs or links from your application(web/mobile) and in turn the API will return data in form of XML. you will then have to parse that data so that you may able to use that in your application.
I have designed a Restful component using Coldfusion 11. Now I need to think of securing this REST service.After searching for sometime
I found HTTPS + oauth2 is the best combination for securing REST service.
In the official oauth2 page, We have libraries for different languages. But there is nothing listed for ColdFusion.
Any one having any kind of knowledge if we have a library for oauth2 in ColdFusion?
I believe you are looking for this. This CF script is built by Matt Gifford 3 years ago, so you might want to take a look and update some code. But as far as i believe, it was designed to work on CF9 and CF10, so it will work on CF11 as well.
Let me know if this works for you.
I have followed a number of tutorials and examples on the web to setup and use django piston. They all work flawlessly, until i try to integrate oauth authentication. I have been working against the following examples:
http://blog.carduner.net/2010/01/26/django-piston-and-oauth/
http://github.com/clemesha/django-piston-oauth-example
Yet both of these seem to fail to include examples of the required oauth templates and views. It is quite likely that i'm just not implementing it properly, so any advice would be hugely helpful.
In summary. I have a working django piston setup (that returns / inserts data). What i am struggling with is a definitive guide to integrating oauth authentication. I.e. what do i need to install, which views, settings, url patterns and templates do i need to create?
Thanks
If you're using a released version of Piston, you might be interested in how we implemented OAuth in Snowy, our AGPL web app for Tomboy notes:
http://git.gnome.org/browse/snowy/tree/urls.py#n48
http://git.gnome.org/browse/snowy/tree/api/urls.py
http://git.gnome.org/browse/snowy/tree/api/templates/piston/authorize_token.html
http://git.gnome.org/browse/snowy/tree/api/handlers.py
The OAuth views are bundled with piston (in the released version).
I have yet to upgrade to prencher's improved OAuth fork (which will apparently turn into 0.3 soon?), but here are his instructions if you are using his code:
http://groups.google.com/group/django-piston/msg/5a148c8e33654c5d
(make sure to read all of his responses in that thread, as he makes some clarifications)