Думая об этом ... Я не уверен, что это абсолютно безопасно, но вот пример, пока я думаю об этом больше -
Единственный способ сделать это, если вы контролируете сайты, в которые он будет встроен. Если вы управляете ими, вы можете передать зашифрованное время от набора фреймов к фрейму:
<iframe src="http://yourdomain/frame.php?key=p21n9u234p8yfb8yfy234m3lunflb8hv" />
frame.php затем расшифровывает сообщение, чтобы найти время в небольшой дельте (скажем, 10 секунд). Поскольку frame.php знает, что только приемлемые сайты могли зашифровать время, он знает, что можно показывать себя самому. В противном случае ничего не выводится.
Все остальное, будь то JavaScript или HTTP_REFER, можно подделать, отключить или обойти.
И действительно, с помощью этого URL атакующий сможет показывать ваш кадр где угодно, если пользователь загружает его в течение 10 секунд. Таким образом, злоумышленник просто взломает принятый сайт и схватит ключ. Если эта модель угрозы неприемлема для вас - тогда вы действительно ничего не можете сделать (кроме, может быть, даже более сложного протокола).