NK cells promote islet allograft tolerance via a perforin-dependent mechanism.