Войдите в Ubuntu Один от iFrame

Я создаю частный портал (частный веб-сайт, где я автоматически авторегистрируюсь ко всему своему любимому веб-сайту). Каждый веб-сайт загружается в iframe.

Я ищу способ автовойти в ubuntuone. Я пытался отправить автоматически заполненную форму, но ubuntuone использует уникальный ключ для каждой аутентификации. Я не могу использовать jQuery для отправления формы от за пределами iframe, потому что это не тот же домен.

Возможно, в PHP? Этот разговор о сообщении о Ubuntu один автор и PHP, но я не знаю, как PHP мог взаимодействовать с API. У Вас может быть некоторый пример?

Спасибо за идеи и Вашу справку.

3
задан 13 April 2017 в 15:24

1 ответ

Простой способ сделать это должно просто регистрироваться к Ubuntu Один в Вашем браузере и затем помещать https://one.ubuntu.com в iframe; Вы останетесь, регистрировался некоторое время, по крайней мере (и Вы иногда выписываетесь для безопасности).

Твердый путь, если Вы хотите быть уверенными, что Вы всегда регистрируетесь, состоит в том, чтобы взять URL https://one.ubuntu.com/api/1.0/from_oauth/? следующий =/и знак это с действительной Ubuntu Один маркер OAuth. Можно получить маркер, пользующийся библиотекой Python в https://launchpad.net/ubuntuone-couch или вручную от брелока для ключей Ubuntu. После того как Вы подписали URL с тем, что маркер OAuth, сериализируйте подпись OAuth в URL (таким образом, Вы получите URL, который похож

и затем откройте его в своем веб-браузере. Тот URL возьмет, Вы к Ubuntu Один, в браузере, регистрировались как Вы.

Можно найти следующую страницу полезной, который делает входящий в систему JavaScript: отредактируйте эту страницу для включения маркерных деталей, и затем можно просто открыть эту страницу в браузере и отметить ее или связаться с нею в iframe с URL file://, и она должна работать. Это также требует oauth.js и sha1.js из http://oauth.googlecode.com/svn/code/javascript/.

<!doctype html>
<html><head><title>Log in to Ubuntu One without password</title>
<script src="sha1.js"></script><script src="oauth.js"></script>
</head><body>
<script>
var url = "https://one.ubuntu.com/api/1.0/from_oauth/"
var accessor = {
  token: "TTTTTTTT",
  tokenSecret: "SSSSSSSSS",
  consumerKey : "CCCCCCCC",
  consumerSecret: "ssssssssss"
};
var message = {
  action: url,
  method: "GET",
  parameters: {next: "/"}
};
OAuth.completeRequest(message, accessor);
OAuth.SignatureMethod.sign(message, accessor);
url = url + '?' + OAuth.formEncode(message.parameters);
location.href = url;
</script>
</body>
</html>
1
ответ дан 1 December 2019 в 19:50

Другие вопросы по тегам:

Похожие вопросы: