如何将Siteminder SSO和Angularjs一起使用?

时间:2017-09-15 17:06:42

标签: angularjs siteminder

我必须在我的角度应用程序的顶部使用SiteMinder SSO。当用户点击给定的URL时,然后路由到siteMinder登录页面。登录成功后,我必须注意所有路由,标题和会话。我没有找到任何相关的anguarjs资源。有人可以帮我这个吗?我需要为此写一个rest api吗?或者siteMinder提供了任何我可以直接使用的魔法。

 @app.route("/", methods =["GET"])
 @app.route("/<bucket_name>", methods =["GET"])
 def auth(bucket_name=None):
   headers = request.headers
   hdr =  dict(headers)
   hdr['bucket'] = bucket_name
   return jsonify(hdr)

这个python脚本,其中request.headers只是给我整个sso头响应(如用户名,会话,cookie等等)如果我登录并且我的url是用sso注册的。这意味着我在调用任何rest api之前已经获得了身份验证标头,并且它在我的每个其他api请求中自动绑定了吗?我怎么能用anguarjs脚本抓住它?

SiteMinder说可以通过Web应用程序访问SM http标头:

现在问题:

  1. 访问它的好地方在哪里:客户端或服务器端?

  2. 如果从客户端那么如何?

  3. 如果服务器端那么我需要为此创建单独的rest api吗?

  4. 如果在服务器端,那么我可以在我的角度应用程序开始之前访问并且注入为常数吗?

  5. function fetchData() {
        var initInjector = angular.injector(["ng"]);
        var $http = initInjector.get("$http");
    
        return $http.get(env.authHeader).then(function(response) {
        	flexapp.constant("authHeader", response.data);
        	console.log(response);
        }, function(errorResponse) {
            // Handle error case
        });
    }

    1. 如何处理会话?

0 个答案:

没有答案