def _auth( self, client_id, key, method ):
available = auth_methods.keys()<EOL>if method not in available:<EOL><INDENT>raise Proauth2Error( '<STR_LIT>',<EOL>'<STR_LIT>'<EOL>'<STR_LIT>'% ( method, '<STR_LIT:\n>'.join( available ) ) )<EOL><DEDENT>client = self.data_store.fetch( '<STR_LIT>', client_id=client_id )<EOL>if not client: raise Proauth2Error( '<STR_LIT>' )<EOL>if not auth_methods[method]( key, client['<STR_LIT>'] ):<EOL><INDENT>raise Proauth2Error( '<STR_LIT>' )<EOL><DEDENT>
_auth - internal method to ensure the client_id and client_secret passed with
the nonce match