Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 06.01.2006, 14:38
Den0k вне форума Посмотреть профиль Отправить личное сообщение для Den0k Найти все сообщения от Den0k
  № 1  
Ответить с цитированием
Den0k
Контрибьютор базы знаний по Флекс
 
Аватар для Den0k

Регистрация: Jul 2005
Адрес: Moldova, Rep. of
Сообщений: 569
на самом деле можно использовать порты и ниже 1024, но для этого надо иметь возможность разместить на порте ниже 1024 свой сервер.
Затем загрузить сертификат безопасности при помощи loadPolicyFile().

в данном случае наверно имеет смысл использовать порт выше 1024.

Старый 06.01.2006, 14:41
__i вне форума Посмотреть профиль Отправить личное сообщение для __i Найти все сообщения от __i
  № 2  
Ответить с цитированием
__i
 
Аватар для __i

Регистрация: Jan 2004
Адрес: Украина, Харьков
Сообщений: 1,524
Отправить сообщение для __i с помощью ICQ
loadPolicyFile() - незнал об это, спасибо за просвещение!!!

Старый 06.01.2006, 15:35
K.A.T.A.F.A.L.K.E.R вне форума Посмотреть профиль Отправить личное сообщение для K.A.T.A.F.A.L.K.E.R Найти все сообщения от K.A.T.A.F.A.L.K.E.R
  № 3  
Ответить с цитированием
K.A.T.A.F.A.L.K.E.R
 
Аватар для K.A.T.A.F.A.L.K.E.R

Регистрация: Jul 2005
Адрес: Go, Ukraine!
Сообщений: 787
Отправить сообщение для K.A.T.A.F.A.L.K.E.R с помощью ICQ
Цитата:
Сообщение от Den0k
на самом деле можно использовать порты и ниже 1024, но для этого надо иметь возможность разместить на порте ниже 1024 свой сервер.
Затем загрузить сертификат безопасности при помощи loadPolicyFile().

в данном случае наверно имеет смысл использовать порт выше 1024.
Можно? Как? Я пробовал - дело даже не в том что не коннектится, он вообще ничего не делает! Ни тебе success ни его отсутствие... Ставишь, к примеру, 8080 - говорит, что не смог подключиться. Ставишь 43 - молчит

Старый 06.01.2006, 15:48
Den0k вне форума Посмотреть профиль Отправить личное сообщение для Den0k Найти все сообщения от Den0k
  № 4  
Ответить с цитированием
Den0k
Контрибьютор базы знаний по Флекс
 
Аватар для Den0k

Регистрация: Jul 2005
Адрес: Moldova, Rep. of
Сообщений: 569
Сам я делал это давно и только ради эксперемента,
вот нашёл чем я тогда руководствовался:

"Дмитрий Гурский для ПРОФЕССИОНАЛОВ ActionScript 2.0"

"17.1.5. Преодоление ограничений для сокетов

Flash-плейер дает возможность получать данные с сервера непосредственно по протоколу TCP, а
не по HTTP, как это обычно происходит в случае сайтов. Для этого со стороны клиента использу-
ется класс XMLSocket, а со стороны сервера — особые приложения, так называемые сокеты-
серверы. Подробно о сокетах поговорим ниже, а пока обсудим лишь ограничения, накладываемые
на них политикой безопасности Flash MX 2004.
Еще во Flash 5, когда появился класс XMLSocket, были запрещены подключения к портам с номе-
рами меньше 1024. Это было связано с необходимостью блокировать возможность атаки на порты
стандартных служб (они исторически имеют номера от 0 до 1024). Во Flash MX 2004 ограничения,
связанные с безопасностью, усилились. Теперь фильм может установить соединение с сокетом-
сервером на домене лишь в том случае, если он сам был получен с этого домена. Чтобы преодо-
леть это ограничение, нужно создать сертификат безопасности точно так же, как и в случае им-
порта данных по HTTP. Перед тем как установить соединение с соке-том на домене, плейер про-
верит наличие файла crossdomain.xml на 80 порту (т. е. запросит его у HTTP-сервера), Если он там
обнаружится и «родной» домен фильма окажется дружественным, то соединение будет создано.
Синтаксис сертификатов безопасности для сокетов точно такой же, как и для импорта данных по
HTTP. Единственное, нужно задать дополнительный атрибут to-ports тега <allow-access-from>, в
котором указывается, доступ к каким портам должен быть разрешен для фильмов домена, пропи-
санного в атрибуте domain. Указать в качестве допустимых несколько доменов можно, прописав
их номера через запятую. Чтобы задать интервал доменов, нужно использовать запись «beginend
», где begin — номер начинающего интервал домена, end —- номер домена, который завершает
интервал. Если значением атрибута to-ports сделать «*», то фильм сможет подключиться к любому
порту с номером больше 1024. По умолчанию нельзя разрешить доступ к порту с номером меньше
1024. Пример сертификата безопасности для сокета:

<?xml version="l.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
"http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="www.mysite.ru" to-ports="2020"/>
<allow-access-from domain="*.narod.ru" to-ports="1024-65535"/>
<allow-access-from domain="*" to-ports="1025,1026"/>
</cross-domain-policy>

Обычно фильм получает сертификат безопасности по HTTP. Это не всегда удобно. Например, до-
мен, на котором установлен сокет-сервер, может просто не иметь HTTP-сервера (он традиционно
занимает 80 порт). Устанавливать же сервер только из-за сертификата безопасности нерациональ-
но. Лучше запросить его непосредственно у сокета-сервера. Сделать это позволяет метод
loadPolicyFile() объекта System.security. В качестве параметра он принимает строку с URL, задан-
ную по следующей схеме: «xmlsockct://domainort», где «xmlsocket://» — префикс, указывающий
на то, что сертификат должен быть получен не по HTTP; domain — имя домена, на котором распо-
лагается сервер; port — занимаемый сокетом-сервером порт.

Например:
var connection:XMLSocket=new XMLSocket();
System.security.loadPolicyFile("xmlsocket://www.mysite.ru:2045");
connection.connect("www.mysite.ru", 2045);

Отправлять сертификат безопасности может как тот же сервер, с которым должно быть установ-
лено соединение, так и любой другой, Настроить его нужно исходя из того, что плейер, запраши-
вая сертификат, посылает сообщение «<cross-domain-request/>», завершаемое нулевым байтом. В
ответ сервер должен отправить текст сертификата, завершив сообщение нулевым байтом. Получив
его, плейер разорвет соединение.
У метода loadPolicyFile() имеется огромное преимущество, которое заставляет обращаться к нему
даже тогда, когда на домене имеется HTTP-сервер. Загружая сертификат безопасности при помо-
щи loadPolicyFileO, можно разрешить доступ фильму к портам с номерами меньше 1024 (то есть к
портам стандартных служб). Для этого сам сертификат должен быть получен с порта с номером,
не превышающим 1024 (если вы смогли разместить на таком порте свой сервер, значит у вас дос-
таточно высокий административный доступ, чтобы позволить вашему фильму обращаться к стан-
дартным портам). Сертификат, загруженный с порта, номер которого больше 1024, или по HTTP,
не может дать допуск на подключение к стандартным портам.
До выхода Flash 7 для установки соединения со стандартным портом приходилось создавать на
сервере прокси-сцtнарий, который, получая данные от фильма, пересылал их на нужный порт.
"



Спасибо людям, умеющим объяснять

Старый 06.01.2006, 15:53
K.A.T.A.F.A.L.K.E.R вне форума Посмотреть профиль Отправить личное сообщение для K.A.T.A.F.A.L.K.E.R Найти все сообщения от K.A.T.A.F.A.L.K.E.R
  № 5  
Ответить с цитированием
K.A.T.A.F.A.L.K.E.R
 
Аватар для K.A.T.A.F.A.L.K.E.R

Регистрация: Jul 2005
Адрес: Go, Ukraine!
Сообщений: 787
Отправить сообщение для K.A.T.A.F.A.L.K.E.R с помощью ICQ
да уж, спасибо Поэкспериментирую как-нить... Когда припечет...

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 12:13.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.