'Grant domain role to a user.
Note: This function appears to be idempotent.
:param domain: Domain to grant the role to.
:type domain: :class:`.OpenStackIdentityDomain`
:param role: Role to grant.
:type role: :class:`.OpenStackIdentityRole`
:param user: User to grant the role to.
:type user: :class:`.OpenStackIdentityUser`
:return: ``True`` on success.
:rtype: ``bool``'

def grant_domain_role_to_user(self, domain, role, user):

    path = ('/v3/domains/%s/users/%s/roles/%s' % (domain.id, user.id, role.id))
    response = self.authenticated_request(path, method='PUT')
    return (response.status == httplib.NO_CONTENT)
