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

1.关于访问(权限)控制

    当一个用户访问服务器的时候,默认情况下,他可以访问所有的流媒体文件和共享对象.但是你可以使用服务端ActionScript为流媒体文件和共享对象创建一个动态访问控制表(ACL).你可以控制谁有权限创建、读取或者更新共享对象或者流媒体文件.

当一个客户端连接上服务器,服务端脚本(main.asc或者你的应用程序名.asc)被传递进一个客户端对象.每个客户端对象拥有readAccess和writeAccess属性.你可以使用这些属性为每个连接的访问进行控制.

2.实现动态访问控制

Client.readAccess和Client.writeAccess属性接收String类型的值.这个值可以包括多个不同的值通过分号隔开,例如:

client.readAccess = "appStreams;/appSO/";
    client.writeAccess = "appStreams/public/;appSO/public/";

默认情况下,readAccess和writeAccess被设置成 / ,表示客户端可以访问服务端的每一个stream和共享对象

允许访问流

在main.asc中,添加onConnection()方法指定一个服务端得目录:

application.onConnect = function(client, name) {
      // give this new client the same name as passed in
        client.name = name;

// give write access
       client.writeAccess = "appStreams/public/";

// accept the new client's connection
       application.acceptConnection(client);
    }

这个main.asc文件准许全部以appStreams/public为开头的URI访问

拒绝访问流

    在main.asc文件中,添加一个onConnect()方法为client.writeAccess指定一个null值:

application.onConnect = function(client, name) {
       ...
       // deny write access to the server
        client.writeAccess = "";
    }

为共享对象定义访问权限

在main.asc文件中,添加onConnect()方法指定共享对象名称,使用相同的URI命名规则:

application.onConnect = function(client, name) {
        ...
       client.writeAccess ="appSO/public/";
    }
    这就给了客户端对所有以appSO/public为开头的共享对象写的权限.

FMS Dev Guide学习笔记(权限控制)的更多相关文章

  1. FMS Dev Guide学习笔记

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

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

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

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

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

  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.使用客户端对象的属性     当一个客户端连接上服务器上的一个应用,服务端就会创建一个包含这个客户端信息的客户端对象并且将它传递给application.onConn ...

  7. MongoDB学习笔记—权限管理

    1.MongoDB权限介绍 a 上篇文章中,我们在Linux下配置了MongoDB环境并且将其设置为服务随机器启动而启动,那么接下来这篇文章我们就来简单说一下MongoDB下对登录用户权限的管理. b ...

  8. TCP/IP学习笔记17--TCP-- 窗口控制 重发控制 流控制

    事业无穷年 -- 韩愈 利用窗口控制提高速度: TCP传输数据是,以一个段为单位(每次发送一个数据包),每发一个段需要一次确认应答,这样就难免存在这样的缺点:包的往返时间越长,通信性能就越低. 为解决 ...

  9. CUDA Programming Guide 学习笔记

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

随机推荐

  1. 使用Keepalived实现linux高可用集群

    安装 apt install libipset-dev keepalived -y 创建账户 useradd -s/usr/sbin/nologin -M -g root keepalived_scr ...

  2. Django中的跨表查询,多表查询。

    一:Django中的ORM进行操作. 必须掌握的十三条: <1> all(): 查询所有结果 <2> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 & ...

  3. 【Eclipse】eclipse自动提示+自动补全

    解决代码的自动提示问题: 1.打开 Eclipse -> Window -> Perferences 2.找到Java 下的 Editor 下的 Content Assist , 右边出现 ...

  4. 使用docker生成centos7系统

    因为缺乏系统,所以使用docker镜像模拟生成多个系统,用于练习集群的安装. 查看已有镜像 docker images 下载镜像: docker pull centos: docker pull  镜 ...

  5. Java课程作业之动手动脑(二)

    纯随机数发生器 编写一个方法,使用以下算法生成指定数目(比如1000个)的随机整数. import java.util.Scanner; public class test { public stat ...

  6. 如何将相册中的动态GIF图转化成NSData类型

    http://www.cocoachina.com/bbs/read.php?tid=151776

  7. centos限制用户使用部分命令

    参考网:https://access.redhat.com/solutions/65822# 环境 Red Hat Enterprise Linux 5 Red Hat Enterprise Linu ...

  8. mezzanine的page_menu tag

    mezzanine的head 导航条.左侧tree.footer是由page_menu产生的.page_menu的算法,先计算出每一页的孩子,然后再逐页去page_menu. @register.re ...

  9. 用递归方法计算斐波那契数列第n项的和

    参考: https://blog.csdn.net/xuzhangze/article/details/78568702 波那契数列数列从第3项开始,每一项都等于前两项之和.即 第n项的值为  (n- ...

  10. node.js 递归创建多级目录

    fs.mkdir只能创建一级目录,所以我们可以自定义一个mkdirs函数,利用递归和回调来实现创建多级目录. function mkdirs(dirname, callback) { //检测目录是否 ...