GVKun编程网logo

php – 相同的登录使用透明的登录过程跨多个站点(php登录到不同页面)

9

本文将带您了解关于php–相同的登录使用透明的登录过程跨多个站点的新内容,同时我们还将为您解释php登录到不同页面的相关知识,另外,我们还将为您提供关于android–2个用户使用相同的设备和相同的应

本文将带您了解关于php – 相同的登录使用透明的登录过程跨多个站点的新内容,同时我们还将为您解释php登录到不同页面的相关知识,另外,我们还将为您提供关于android – 2个用户使用相同的设备和相同的应用程序,但不同的登录ID – 他们有不同的gcm注册ID?、angularjs – Angular – 相同的Url“/”,但根据用户的登录状态使用不同的模板、App的登录拦截跟浏览器的登录拦截有什么差别、linux – 在登录时显示最近的登录失败的实用信息。

本文目录一览:

php – 相同的登录使用透明的登录过程跨多个站点(php登录到不同页面)

php – 相同的登录使用透明的登录过程跨多个站点(php登录到不同页面)

问题

假设我有example.com,example.org和example.net.

所有这些站点都有一个登录名,该登录名根据相同的用户凭据进行身份验证.

我正在寻找有效的方式只登录一个地方,但仍然能够透明地登录网站站点.

我目前的解决方案
…正在使用iframe在其中一个站点(我称之为主站点)上加载资源,如果用户在主站点登录,则使用令牌刷新页面并通过一些JavaScript自动登录用户.

但由于以下几个原因,这实际上是无效和不安全的:

>用户需要在主站点登录
>用户需要刷新他的页面,使用一些客户端代码(我知道可能无法避免这种情况).
>使用iframe通常不赞成,有些甚至有浏览器插件阻止这些.

我不想要的
我对使用Facebook,Google或OpenID提供商等第三方提供商不感兴趣,因为这需要我的用户在第三方网站注册才能使用我的服务.

总结具体问题
就像谷歌甚至StackOverflow一样,网站认证之间的过程似乎是透明的我需要类似的东西.我目前的解决方案有哪些更好的选择?

解决方法

我无法共享代码…但我实施的解决方案涉及一个中间人来处理我所有网站的身份验证…我们称之为SSO代理….

基本上,所有登录请求都通过SSO broker进行,它将确定您在尝试访问siteb时是否已在sitea中登录.

…我可以指出我们如何实现它的壁橱是:
http://www.jasny.net/articles/simple-single-sign-on-for-php/

其他sso解决方案也都有自己的位置,但有些解决方案比需要的更复杂.

另一种简单的方法是,简单地在彼此之间传递一些(secure-ish)令牌.

android – 2个用户使用相同的设备和相同的应用程序,但不同的登录ID – 他们有不同的gcm注册ID?

android – 2个用户使用相同的设备和相同的应用程序,但不同的登录ID – 他们有不同的gcm注册ID?

我用user_id创建了表(基于email-id的独特sno)和每个用户的GCM_id.我有两个问题,即

>可以使用不同email_id的2个用户从同一设备登录并接收该用户的gcm w.r.t吗?
>如何在我的数据库中创建和维护列.基本上,如果用户在不同的设备(Mobile,tab-Android)上安装了应用程序但是同样的email_id,那么获取gcm所需的列是什么?

我指的是Android Hive链接,但有人说它的gcm(2012)并且已被弃用.
http://www.androidhive.info/2012/10/android-push-notifications-using-google-cloud-messaging-gcm-php-and-mysql/

摘要:
我需要采取哪些步骤才能使最新的GCM在多个设备上正常工作?
谢谢.
我非常感谢任何帮助.谢谢你.

解决方法

您在给定设备上的应用程序将具有一个注册ID.您希望将该注册ID与当前登录用户的用户ID相关联.因此,当用户登录时,您应该向服务器发送用户ID注册ID并将其存储在您的表中.当用户注销时,您应该将用户ID发送到服务器并清除数据库中该用户的注册ID.

现在,如果您想为同一个用户支持多个设备,则需要使用表格.一个用户ID表(其中用户ID是唯一的,可能是主键),另一个表用于将用户ID与注册ID相关联(其中每个用户可以与多个注册ID相关联).同样,您在登录期间创建用户ID – 注册ID关联,并在注销期间删除关联.

angularjs – Angular – 相同的Url“/”,但根据用户的登录状态使用不同的模板

angularjs – Angular – 相同的Url“/”,但根据用户的登录状态使用不同的模板

我试图有两个不同的模板.一个是登录用户描述业务的登陆页面,另一个是用户登录时的其他仪表板页面.

我在this other stack上阅读了关于如何用UI路由器这样做.我想知道最好的做法,使用ngRoute做类似这样的事情?

下面设置的方式是“/ frontdesk”是仪表板,“/”是注销用户的着陆页.但!我希望网址是相同的用户是否在仪表板上或已经注销并发送到着陆页!我不想要“/ frontdesk”,我需要“/”作为IndexController和FrontdeskController.

这是我的路由JS.

(function () {
      'use strict';

    angular
      .module('resonanceinn.routes')
      .config(config);

    config.$inject = ['$routeProvider'];

    function config($routeProvider) {
      $routeProvider
        .when('/',{ // This is the landing Page
            controller: 'IndexController',controllerAs: 'vm',templateUrl: '/static/javascripts/layout/index.html'
        })
        .when('/frontdesk',{ //This is logged in user that I want to become '/' as well
            controller: 'FrontdeskController',templateUrl: '/static/javascripts/frontdesk/frontdesk.html'
        })
        .when('/register',{
            controller: 'RegisterController',templateUrl: '/static/javascripts/authentication/register.html'
        })
        .when('/login',{
            controller: 'LoginController',templateUrl: '/static/javascripts/authentication/login.html '
        })
        .when('/:username',{
            controller: 'ProfileController',templateUrl: '/static/javascripts/profiles/profile.html'
        })
        .when('/:username/settings',{
            controller: 'ProfileSettingsController',templateUrl: '/static/javascripts/profiles/settings.html'
     }).otherwise('/');
   }
})();

解!

感谢大家的答案.

感谢@ThibaudL为更好的解决方案.

这是我最后做的事情

在Routes.js

.when('/',{
        controller: 'MainController',templateUrl: '/static/javascripts/layout/Main.html'

main.html中

<div ng-include="" src="'/static/javascripts/layout/index.html'" ng-if="auth"></div>
<div ng-include="" src="'/static/javascripts/frontdesk/frontdesk.html'" ng-if="!auth"></div>

MainController.js

(function () {
  'use strict';

  angular
    .module('resonanceinn.layout.controllers')
    .controller('StartController',StartController);

  StartController.$inject = ['$scope','$route','$routeParams','$location','Authentication'];

  function StartController($scope,$route,$routeParams,$location,Authentication) {

      $scope.auth = Authentication.isAuthenticated();
  }
})();

所以现在如果用户被认证,它只是将模板切换到用户信息板.
我添加了一个新的div与ng控制器到每个模板,使每个模板有其单独的控制器.

我会做的是:

main.html中

<div ng-include="" src="'/static/javascripts/layout/index.html'" ng-if="auth"></div>

MainController.js

(function () {
  'use strict';

  angular
    .module('App.layout.controllers')
    .controller('MainController',MainController);

  MainController.$inject = ['$scope','Authentication'];

  function MainController($scope,Authentication) { 

      $scope.auth = Authentication; 
   });
  }
})();

App的登录拦截跟浏览器的登录拦截有什么差别

App的登录拦截跟浏览器的登录拦截有什么差别


如果是web服务,我们可以在spring中增加一个拦截器或filter进行验证session是否有该用户信息,


如果是app(如Android客户端)进行做登录时,是否也是将用户信息放在session中?跟web的登录拦截有什么差别吗?


第一次做app的登录,没明白。求大神解答

linux – 在登录时显示最近的登录失败

linux – 在登录时显示最近的登录失败

我有一个面向Web的Ubuntu Linux服务器.因此,我得到了相当数量的暴力SSH尝试(谁没有).我想在登录提示时显示最近N次失败的登录尝试.我已经找到了简单的脚本:
grep "Failed" /var/log/auth.log | tail -5

但我需要知道的是我在哪里放这行脚本?有什么地方可以说它与shell无关吗?

解决方法

您可以使用几个软件包来帮助进行暴力攻击.

> Denyhosts
> Fail2ban

要收集日志并向您发送报告,您可以使用logwatch.它还可以发送失败登录的摘要.

要回答原始问题,可以将脚本放在“/etc/profile.d/yourscript.sh”中,并在登录时执行.

您也可以考虑设置arno-iptables-firewall软件包.

关于php – 相同的登录使用透明的登录过程跨多个站点php登录到不同页面的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于android – 2个用户使用相同的设备和相同的应用程序,但不同的登录ID – 他们有不同的gcm注册ID?、angularjs – Angular – 相同的Url“/”,但根据用户的登录状态使用不同的模板、App的登录拦截跟浏览器的登录拦截有什么差别、linux – 在登录时显示最近的登录失败的相关知识,请在本站寻找。

本文标签: