def access(self, url, params=None, method='<STR_LIT:GET>', headers=None,<EOL>body='<STR_LIT>', max_redirects=<NUM_LIT:5>, content_parser=None):
if not self.user and not self.credentials:<EOL><INDENT>raise CredentialsError(u'<STR_LIT>')<EOL><DEDENT>headers = headers or {}<EOL>self._log(<EOL>logging.INFO,<EOL>u'<STR_LIT>'.format(url))<EOL>request_elements = self.create_request_elements(<EOL>request_type=self.PROTECTED_RESOURCE_REQUEST_TYPE,<EOL>credentials=self.credentials,<EOL>url=url,<EOL>body=body,<EOL>params=params,<EOL>headers=headers,<EOL>method=method<EOL>)<EOL>response = self._fetch(*request_elements,<EOL>max_redirects=max_redirects,<EOL>content_parser=content_parser)<EOL>self._log(<EOL>logging.INFO,<EOL>u'<STR_LIT>'.format(<EOL>response.status))<EOL>return response<EOL>
Fetches the **protected resource** of an authenticated **user**.

:param credentials:
    The **user's** :class:`.Credentials` (serialized or normal).

:param str url:
    The URL of the **protected resource**.

:param str method:
    HTTP method of the request.

:param dict headers:
    HTTP headers of the request.

:param str body:
    Body of ``POST``, ``PUT`` and ``PATCH`` requests.

:param int max_redirects:
    Maximum number of HTTP redirects to follow.

:param function content_parser:
    A function to be used to parse the :attr:`.Response.data`
    from :attr:`.Response.content`.

:returns:
    :class:`.Response`