an simple implemention of oauth2