【问题标题】:okta and angular 8 authenticationokta 和 Angular 8 身份验证
【发布时间】:2021-01-11 21:41:54
【问题描述】:

我已经为 Angular 7 应用程序实现了 okta 身份验证。流程如下:

  1. 用户登陆登陆页面点击登录按钮
  2. 用户被重定向到 okta 登录
  3. 在 okta 中,我们有一个标志,用于检查用户是否为新用户或不称为“newUser”
  4. 登录后,okta 必须检查标志值,如果为 true,则路由到仪表板页面,如果为 false,则到表单页面。

okta 如何处理这种重定向?

【问题讨论】:

    标签: typescript angular8 openid-connect okta


    【解决方案1】:

    您可以创建自己的回调组件并将您的回调路由映射到它而不是 Okta 的。默认回调组件是here。里面的代码是:

    import { Component, OnInit } from '@angular/core';
    
    import { OktaAuthService } from '../services/okta.service';
    
    @Component({
      template: `<div>{{error}}</div>`
    })
    export class OktaCallbackComponent implements OnInit {
      error: string;
    
      constructor(private okta: OktaAuthService) {}
    
      async ngOnInit() {
        /**
         * Handles the response from Okta and parses tokens.
         */
        return this.okta.handleAuthentication()
          .then(() => {
            /**
             * Navigate back to the saved uri, or root of application.
             */
            const fromUri = this.okta.getFromUri();
            // add custom logic here
            window.location.replace(fromUri);
          })
          .catch(e => {
            this.error = e.toString();
          });
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-09-29
      • 2018-07-16
      • 2021-07-18
      • 2018-04-15
      • 1970-01-01
      • 1970-01-01
      • 2016-12-07
      相关资源
      最近更新 更多