2008-11-17 4 views
4

Я довольно новичок в разработке приложений AIR, поэтому, возможно, это глупый вопрос, но я не могу найти ответы на вопросы от google. Любая помощь, которую вы можете мне дать, очень ценится.Общий секрет с API в приложении AJAX Adobe AIR

Я создаю приложение AIR с Ajax, используя api, который идентичен Api Flickr с общим секретным ключом. Проблема в том, что в комплект поставки воздуха входит весь источник, и я не хочу передавать свой общий секрет. Есть какой-либо способ сделать это? Могу ли я скрыть какой-то источник или каким-то образом включить этот общий секрет в приложение, не отдавая его?

Благодарим за помощь.

+1

Что такое API? Мы никому не скажем. – 2008-12-22 19:13:26

ответ

0

Первый вопрос - позволяет ли лицензия написать приложение и передать его кому-то другому, чтобы использовать его с ключом, а не иметь собственный ключ?

Если да, и если это SDK, совместимый с AIR, у них должен быть какой-то метод, который они рекомендуют.

EDIT:

This question описывает, как Flickr обеспечивает доступ к дополнительным ресурсам с помощью ключа. Если это приложение AIR, вы прыгаете через обручи песочницы, чтобы обеспечить одновременное подключение к Интернету и настольному приложению?

2

Возможно, вы захотите использовать EncryptedLocalStore, чтобы безопасно хранить ключ API.

Но вы не сможете распространять его с приложением, так как зависит шифрование магазина, от какой ОС работает приложение.

Способ семян магазин будет на приложения установить:

  1. Run инсталлятор
  2. Запуск скриптов после установки в случае необходимости.
  3. Проверьте магазин. Если ключ отсутствует, загрузите ключ с вашего сайта и сохраните его в ELS.

Используя этот метод, пользователь никогда не узнает ваш ключ, но он будет присутствовать в магазине приложения.

+1

Как получить ключ в первый раз, когда приложение AIR установлено на клиенте? Это будет в коде, который, по-видимому, есть у пользователя по заданному вопросу. – user43636 2008-12-23 12:58:23

0

Я бы либо сохранил ключ на сервере и извлек его с помощью SSL (https: //) и класса flash.net.URLLoader, либо сохранил его в зашифрованном SQLite database. Очевидно, что база данных создает намного больше накладных расходов, если вы еще не используете ее, поэтому я бы пошел с первым вариантом, если вы не собираетесь использовать базу данных SQLite сейчас или в будущем.

0

Вы можете использовать EncryptedLocalStore, как упоминал Пьер-Ив Гилье. Существует метод обнаружения, если приложение запускается с первого раза. Но я бы пошел на этот метод:

Проверьте, есть ли у Encryptedlocalstore ключ api, и если он не захватит его с сервера и сохранит его.

 Смежные вопросы

  • Нет связанных вопросов^_^