zoukankan      html  css  js  c++  java
  • 2-3. 账号管理子系统设计

    网络安全传输系统整体设计:

      1.基本传输子系统+OpenSLL加密传输 (客户端 <->服务器端)

      2.线性池的优化设计(并行服务器)

      3.基于sqlite账号管理子系统    (验证客户端)(1.数据文件置于客户端目录下;2,客户端加入数据验证程序(利用数据文件中查找))

    对于数据库系统:

      访问数据库应用 -> 管理数据库系统 -> 数据库存储 (自上而下)

    数据库中数据以表的形式而存在,当处理大批量数据时,更体现其高效性与安全性!(结构化查询语言SQL,用于访问数据库中的数据)

    创建表 creat table stu name varchar(10),number small(int)  表名 变量-类型
    向表中插入数据 insert into stu values('HJH',1)                          表名 name-number
    表中查询数据 select * form stu
    表中删除数据 delete form stu where 范围

     

     

     

     

     

    -----------------------------------------------------------------------------------------

    数据库移植、创建数据文件

      解压运行"./configuer --host=arm-linux- --prefix=${PWD}/_install"配置命令 -> 生成Makefile文件-> make、make install -> 将产生的库函数文件全部复制与/rootfs/lib/目录下,并运行产生test_db执行文件;

    #test_db sql.db "create table stu (name varchar(10),number small(int) )";创建sql_db数据库文件

    #test_db sql.db "insert into stu values ( 'david',1 )"; 向数据可中插入数据

    #test_db sql.db "insert into stu values ( 'HJH',1 )";  

    #test_db sql.db "insert into stu values ( 'CC',1 )";  

     

    数据库应用

      数据库账号管理子系统,主要用于管理客户端账号,非允许客户禁止登陆服务器

    -> 1.创建数据库文件sql.db(存储可登录的用户信息),存储于客户端目录下;

    ->2.客户端程序内加入登陆验证程序,查询sql.db信息表中是否匹配,错误即exit(0)立即退出。

    main()主函数下:
    if(login()!=0)
        {
            printf("wrong username or password!
    ");
            exit(0);    
        }
    
    int login()   //登陆验证函数,成功返回0
    {
        char username[10];
        char passwd[10];
        sqlite3 *db;
        char sql[50];
        int success;
        //1.通知输入用户名和密码
        printf("User name: ");  scanf("%s",username);
        printf("Password: ");    scanf("%s",passwd);
        //2.根据用户名,从数据库提取正确的密码
        sprintf(sql, "select passwd from tb0 where name='%s';",username);  
        sqlite3_open("sql.db", &db);                 /*a.打开数据库*/
        sqlite3_exec(db, sql, callback, 0, NULL);     /*b.执行sql语言*/ 
        sqlite3_close(db);                            /*c.关闭数据库*/  
        //3.比较用户输入的密码和数据库提取出的密码,以决定是否登录成功
        success = strcmp(passwd,passwd_d);     //成功返回0
        return success;
    }

    ----------------------------------------------------------------

    网络安全传输系统

      1)通过对基础传输子系统的程序,实现客户端上传或下载服务器程序。在此基础上加入OpenSSL加密机制增强网络传输的安全性;  2)应用线性池技术优化服务器,实现多客户端同时访问并行执行任务。  3)同时为了提高对客户端账号的管理,加入数据库账号管理子系统,对欲登录服务器的客户端进行账号验证,非数据库允许账号禁止登陆。  实现网络安全的环境下有序进行文件传输操作。

     

     

  • 相关阅读:
    磁盘 inodes 不足 Free inodes is less than 20% on volume
    记录一次Nginx使用第三方模块fair导致的线上故障排错
    xml 特殊字符 导致的 solr 数据导入异常
    Jenkins 定时备份插件 ThinBackup
    Elasticsearch 节点磁盘使用率过高,导致ES集群索引无副本
    Elasticsearch定时删除索引第二版
    js for in 获得遍历数组索引和对象属性
    js函数作用域
    django 1.11.1 连接MySQL
    angular 4 和django 1.11.1 前后端交互 总结
  • 原文地址:https://www.cnblogs.com/hjh-666/p/11234559.html
Copyright © 2011-2022 走看看