一、开发交互式的媒体应用程序

1.使用客户端对象的属性

    当一个客户端连接上服务器上的一个应用,服务端就会创建一个包含这个客户端信息的客户端对象并且将它传递给application.onConnect() handler,你可以写服务端代码访问客户端对象的属性以及使用这些值来验证连接上来的客户端:

application.onConnect = function( pClient ) {
    for (var i in pClient) {
        trace( "key: " + i + ", value: " + pClient[i] );
    }
}

检查客户端IP地址

在main.asc中,检查client.ip的值,如果需要的话,阻止客户端连接服务端应用程序:

if (client.ip.indexOf("60.120") !=0) {
    application.rejectConnection(client, {"Access Denied"} );
}

检查原始URL

在main.asc中,检查client.referrer拒绝来自一个URL类表中的URl访问.确保连接上你的服务端应用程序的SWF文件来自一个你预期的地址.当你发现一个匹配列表中的URL尝试连接的话,你就可以阻止连接:

referrerList = {};
referrerList["http://www.example.com"] = true;
referrerList["http://www.abc.com"] = true;

if (!referrerList[client.referrer]) {
    application.rejectConnection(client, {"Access Denied"} );
}

FMS Dev Guide学习笔记(验证客户端)的更多相关文章

  1. [转载]FMS Dev Guide学习笔记(验证客户端二)

    一.开发交互式的媒体应用程序 1.使用unique key a. 在客户端ActionScript中创建一个unique key,如下代码所示,unique key的组成为本地电脑时间和一个随机数连接 ...

  2. [转载]FMS Dev Guide学习笔记(验证用户)

    一.开发交互式的媒体应用程序 1.使用外部资源验证用户 对于有限数量的客户,请求用户名密码,然后通过外部资源(像数据库.LDAP服务或其它访问授权服务)验证它们,是可行的.     a.SWF在请求连 ...

  3. FMS Dev Guide学习笔记

    翻译一下其中或许对游戏开发有用的一个章节 一.开发交互式的媒体应用程序 1.共享对象(Shared objects)     ----关于共享对象     使用共享对象可以同步用户和存储数据.共享对象 ...

  4. FMS Dev Guide学习笔记(远程共享对象)

    一.开发交互式的媒体应用程序1.共享对象(Shared objects)    ----远程共享对象 在你创建一个远程共享对象之前,创建一个NetConnection对象并且连接到服务器.一旦你创建了 ...

  5. FMS Dev Guide学习笔记(SharedBall)

    一.开发交互式的媒体应用程序1.共享对象(Shared objects) ----SharedBall example 这个SharedBall example创建了一个临时的远程共享对象.类似于多人 ...

  6. FMS Dev Guide学习笔记(权限控制)

    一.开发交互式的媒体应用程序 1.关于访问(权限)控制     当一个用户访问服务器的时候,默认情况下,他可以访问所有的流媒体文件和共享对象.但是你可以使用服务端ActionScript为流媒体文件和 ...

  7. Mina框架的学习笔记——Android客户端的实现

    Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络 ...

  8. CUDA Programming Guide 学习笔记

    CUDA学习笔记 GPU架构 GPU围绕流式多处理器(SM)的可扩展阵列搭建,每个GPU有多个SM,每个SM支持数百个线程并发执行.目前Nvidia推出了6种GPU架构(按时间顺序,详见下图):Fer ...

  9. AMQ学习笔记 - 05. 客户端模板化

    概述 客户端编程模型中,大部分的步骤都是相同的.将相同的部分做成模板,将不同的部分预留接口,实现者就只需要针对不同的部分提供实现. 设计 类图 发送方客户端 说明: 基于模板的思想,SendTempl ...

随机推荐

  1. insert into table 插入多条数据

    方法1: insert into `ttt` select '001','语文' union all select '002','数学' union all select '003','英语'; 方法 ...

  2. Java - 15 Java 正则表达式

    Java 正则表达式 正则表达式定义了字符串的模式. 正则表达式可以用来搜索.编辑或处理文本. 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. Java正则表达式和Perl的是最为相似 ...

  3. Python并发编程一(多进程)

    1.背景知识(进程.多道技术) 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一 ...

  4. Win/Lin 双系统时间错误的调整 (转)

    Win/Lin 双系统时间错误的调整 http://jingyan.baidu.com/article/154b46317b25ca28ca8f41e8.html | 浏览:1070 | 更新:201 ...

  5. [Lua]table(一):打印与复制

    一.打印table function PrintTable(tb) if type(tb) ~= "table" then print(tb) return end local c ...

  6. 【Python爬虫实战】微信爬虫

    所谓微信爬虫,即自动获取微信的相关文章信息的一种爬虫.微信对我们的限制是很多的,所以我们需要采取一些手段解决这些限制主要包括伪装浏览器.使用代理IP等方式http://weixin.sogou.com ...

  7. 18.os模块获取url后缀

    针对文件下载文件重命名文件后缀的获取,此方式只适用url里有后缀的情况(其它的要根据情况去用类似方式获取字段后缀). import os A="http://www.铜陵市建筑工程信息网.c ...

  8. 《GPU高性能编程CUDA实战》第六章 常量内存

    ▶ 本章介绍了常量内存的使用,并给光线追踪的一个例子.介绍了结构cudaEvent_t及其在计时方面的使用. ● 章节代码,大意是有SPHERES个球分布在原点附近,其球心坐标在每个坐标轴方向上分量绝 ...

  9. hadoop/hdfs/yarn 详细命令搬运

    转载自文章 http://www.cnblogs.com/davidwang456/p/5074108.html 安装完hadoop后,在hadoop的bin目录下有一系列命令: container- ...

  10. 浅谈Android MVP

    什么是MVP MVP,全称 Model-View-Presenter.要说MVP那就不得不说一说它的前辈--MVC(Model-View-Controller,模型-视图-控制器). View:对应于 ...