Yes, it is possible in general to allocate portfolio VaR to single positions in a portfolio. This is based on a general result on homogeneous risk measures called the Euler allocation. This allocation provides the marginal change in your risk measure when the size of one position changes (for an infinitesimally) small amount. For VaR this gradient can be expressed as follows: Let $L=\sum L_i$ denote your portfolio's P&L then the marginal increase of VaR in direction $L_i$ will be
$$ \frac{d \text{VaR}(L + h L_i)}{dh} = E[L_i | L=VaR].$$ This equality is non-trivial for more details see the papers by Tasche, start here.
No assumptions (except mild technical ones) on the distribution of $L$ or the $L_i$ are necessary to derive this result. But if you make normal ("parametric") assumptions for your P&L the conditional expectation on the RHS can be readily calculated and leads to the well known formulas for parametric Component VaR.
In case of historical or Monte Carlo estimates, i.e. estimates based on samples, the conditional expectation poses a challenge since $L=VaR$ will generally be a set of measure zero.
In the Monte Carlo case this can be solved by broadening the condition or interpolation (i.e. you condition on $VaR-\epsilon<L<VaR + \epsilon$ and interpolate between quantiles). Another possibility is to use kernel estimates to estimate the conditional probability. Again the paper cited above provides more details.
Theoretically the same applies for historical observations, but of course the data/sample situation is even worse. Unless you have plenty of observations at the relevant quantiles this is probably fruitless.