コード例 #1
0
        public override SignInRP_Resp SignInRP(SignInIdP_Resp_SignInRP_Req req1)
        {
            AuthenticationResponse req = (AuthenticationResponse)req1;

            if (req == null)
            {
                return(null);
            }

            AuthenticationConclusion conclusion = Process_SignInRP_req(req);

            if (conclusion == null)
            {
                return(null);
            }
            CST_Ops.recordme(this, req, conclusion, true);

            if (AuthenticationDone(conclusion))
            {
                return(new SignInRP_Resp());
            }
            else
            {
                return(null);
            }
        }
コード例 #2
0
        public override SignInRP_Resp SignInRP(SignInIdP_Resp_SignInRP_Req req)
        {
            LiveIDAuthenticationResponse codeResp   = (LiveIDAuthenticationResponse)req;
            AuthenticationConclusion     conclusion = AuthenticationUsingAuthorizationCodeFlow(codeResp);

            if (conclusion != null)
            {
                isVerified = true;
            }
            return(null);
        }
コード例 #3
0
ファイル: Yahoo_RP.cs プロジェクト: dwjsong/AuthPlatelet
        public override AuthenticationConclusion Process_SignInRP_req(AuthenticationResponse req)
        {
            if (this.Domain != req.return_to)
            {
                return(null);
            }
            AuthenticationConclusion conclusion = new AuthenticationConclusion();

            conclusion.SessionUID = req.claimed_id;

            return(conclusion);
        }
コード例 #4
0
        public virtual bool AuthenticationDone(AuthenticationConclusion conclusion)
        {
            bool CST_verified = CST_Ops.Certify(conclusion);

            if (CurrentSession["UserID"] != null)
            {
                CurrentSession["UserID"] = CST_verified?conclusion.SessionUID:"";
            }
            else
            {
                CurrentSession.Add("UserID", CST_verified ? conclusion.SessionUID : "");
            }
            return(CST_verified);
        }
コード例 #5
0
        public AuthenticationConclusion conclude(TokenResponse tokenResp)
        {
            AuthenticationConclusion conclusion = new AuthenticationConclusion();

            conclusion.SessionUID = tokenResp.id_token.Claims.UserId;

            CST_Ops.recordme(this, tokenResp, conclusion, false, true);

            conclusion = pre_AuthDone(conclusion);
            if (AuthenticationDone(conclusion))
            {
                return(conclusion);
            }
            return(null);
        }
コード例 #6
0
            public bool LoginSafety(AuthenticationConclusion conc)
            {
                var userPrincipal = IdPUserPrincipal(conc.idpUsername);

                VProgram_API.AssumeTrusted(idpPrincipal);
                VProgram_API.AssumeTrusted(rpPrincipal);
                VProgram_API.AssumeTrusted(userPrincipal);
                // BCT accepts this code but silently mistranslates it!
                //return VProgram_API.ActsForAny(conc.authenticatedClient,
                //    new PrincipalHandle[] { idpPrincipal, rpPrincipal, IdPUserPrincipal(conc.idpUsername) });
                var targets = new Principal[3];

                targets[0] = idpPrincipal;
                targets[1] = rpPrincipal;
                targets[2] = userPrincipal;
                return(VProgram_API.ActsForAny(conc.authenticatedClient, targets));
            }
コード例 #7
0
 public override bool AuthenticationDone(AuthenticationConclusion conclusion)
 {
     GlobalObjects_base.BadPersonCannotSignInAsGoodPerson(conclusion);
     return true;
 }
コード例 #8
0
 public virtual AuthenticationConclusion pre_AuthDone(AuthenticationConclusion req)
 {
     return req;
 }
コード例 #9
0
        public AuthenticationConclusion conclude(TokenResponse tokenResp)
        {
            AuthenticationConclusion conclusion = new AuthenticationConclusion();
            conclusion.SessionUID = tokenResp.id_token.Claims.UserId;

            CST_Ops.recordme(this, tokenResp, conclusion, false, true);

            conclusion = pre_AuthDone(conclusion);
            if (AuthenticationDone(conclusion))
                return conclusion;
            return null;
        }
コード例 #10
0
        public override bool AuthenticationDone(AuthenticationConclusion conclusion)
        {
            GlobalObjects_base.Assert_BadPersonCannotSignInAsGoodPerson(conclusion);

            return(true);
        }
コード例 #11
0
        public virtual bool AuthenticationDone(AuthenticationConclusion conclusion)
        {
            bool CST_verified = CST_Ops.Certify(conclusion);

            if (CurrentSession["UserID"] != null)
                CurrentSession["UserID"] = CST_verified?conclusion.SessionUID:"";
            else
                CurrentSession.Add("UserID", CST_verified ? conclusion.SessionUID : "");
            return CST_verified;
        }
コード例 #12
0
 public virtual AuthenticationConclusion pre_AuthDone(AuthenticationConclusion req)
 {
     return(req);
 }
コード例 #13
0
ファイル: Yahoo_RP.cs プロジェクト: authplatelet/AuthPlatelet
        public override AuthenticationConclusion Process_SignInRP_req(AuthenticationResponse req)
        {
            if (this.Domain != req.return_to) return null;
            AuthenticationConclusion conclusion = new AuthenticationConclusion();

            conclusion.SessionUID = req.claimed_id;

            return conclusion;
        }