我们正在将Okta登录小部件集成到基于React的webapp中。
示例片段:
var oktaSignIn = new OktaSignIn({baseUrl: baseUrl});
oktaSignIn.renderEl(...)
Run Code Online (Sandbox Code Playgroud)
首次渲染小部件时,对我们来说效果很好,但是在用户登录并再次注销后,Web应用程序将再次渲染登录组件,并会尝试renderEl
再次执行以渲染小部件。这将引发以下异常:
Backbone.history has already been started
Run Code Online (Sandbox Code Playgroud)
我创建了这个jsfiddle来演示问题。它只是实例化登录小部件两次(等待后第二次)。您可以看到第二次调用导致引发异常。
https://jsfiddle.net/nudwcroo/6/
目前,我的解决方法是在登录组件时重新加载整个Web应用程序,但这对于单页面应用程序是不希望的。
这是一个已知的问题?有没有办法在单个javascript会话中两次初始化登录小部件?
我正在Android应用程序上实施SSO,在开发过程中,我们使用Okta进行身份管理。我们已设置Okta,以便在成功进行用户/密码身份验证之后,用户仅需在后续登录时验证其密码即可。
我正在使用Chrome自定义标签打开浏览器网址,并在AndroidManifest中设置了正确的意图过滤器配置。
我遇到的问题是,初始身份验证屏幕未重定向回应用程序,并且出现ERR_UNKOWN_URL_SCHEME错误页面。但是,从密码验证屏幕进行身份验证时,会识别应用方案,并将用户重定向回该应用。
另请注意:在ERR_UNKOWN_URL_SCHEME错误页面上,如果我选择“在Chrome中打开”,则应用会选择重定向并将我放回到应用中。这使我相信这可能是“自定义标签”问题。
启动Chrome自定义标签的代码如下所示:
CustomTabsIntent customTabsIntent = new CustomTabsIntent.Builder(mCTSession)
.setToolbarColor(ContextCompat.getColor(mContext, R.color.colorPrimary))
.setStartAnimations(context, R.anim.slide_in_right, R.anim.slide_out_left)
.setExitAnimations(context, android.R.anim.slide_in_left, android.R.anim.slide_out_right)
.build();
customTabsIntent.intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_NEW_TASK);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP_MR1) {
String referrer = Intent.URI_ANDROID_APP_SCHEME + "//" + packageNameToUse;
customTabsIntent.intent.putExtra(Intent.EXTRA_REFERRER, Uri.parse(referrer));
}
customTabsIntent.launchUrl(context, Uri.parse(fixedUrl));
Run Code Online (Sandbox Code Playgroud)
我知道在较旧版本的CCT中报告了类似的问题,但该问题似乎已得到修复。
还有其他人遇到过此特定问题吗?
添加实际身份验证页面的图像以供参考...
初始用户/密码屏幕(不起作用):
仅密码验证屏幕(工作!):
我想使用Okta作为基于SAML 2.0的IDP,AWS Cognito作为服务提供商,使用Cognito用户池来进行联合IDP配置.
我已按照下面列出的AWS网站中提到的所有步骤进行操作 -
1563不提供任何支持或文档- https://support.okta.com/help/answers?id=9062A000000QucAQAS&feedtype=SINGLE_QUESTION_DETAIL&dc=xSAML&criteria=OPENQUESTIONS&.
请注意,我已经尝试过Okta作为IDP,与AWS IAM建立了信任关系,并使用Okta用户登录我的AWS账户.按照Okta提供的详细文档,这可以正常工作.但是,我的需求不同,我想在我的AWS cognito用户池中使用Okta作为SAML IDP.
包含要在两端(即AWS和Okta)完成的配置的任何详细文档都会有所帮助.
amazon-web-services single-sign-on okta okta-api aws-cognito
我尝试在 Spring Boot 应用程序中使用 JWT 令牌和 SAML。我的应用程序使用从 OKTA 返回的用户名创建 JWT 令牌。
流动:
我能够将应用程序导航到 OKTA 登录页面,对用户进行身份验证并获取用户名。然后,在此步骤之后,我尝试使用此用户名创建 JWT 令牌。
我面临的问题是,因为我有两个 WebSecurityConfigurerAdapter,一个用于 SAML 重定向,另一个用于 JWT,我无法限制 APIS 拥有 JWT 令牌。我的应用程序没有检查所有 API 中的 JWT 令牌。
当我禁用 SAML 时,JWT 可以正常工作,如果我禁用 JWT SAML 也可以正常工作。现在有人可以告诉我如何配置我的应用程序以使用 SAML 和 JWT Web 安全配置吗?
@Confguration
@EnableWebSecurity
public class SecurityConfig {
@Order(1)
@Configuration
public static class SAMLConfig extends WebSecurityConfigurerAdapter {
@Autowired
private SAMLUserDetailsServiceImpl samlUserDetailsServiceImpl;
@Value("${security.saml2.metadata-url}")
String metadataUrl;
@Value("${server.ssl.key-alias}")
String …
Run Code Online (Sandbox Code Playgroud) 我们使用 spring-security-saml2-core 进行 Web 应用程序的 SSO Okta 集成。
\nGitHub: https://github.com/spring-projects/spring-security-saml
\n该项目处于维护模式,将于 2021 年 10 月 6 日终止生命周期。请改用 Spring Security\xe2\x80\x99s SAML 支持。
\n我需要将 SAML 库升级到 Spring Security SAML2 服务提供程序\n https://docs.spring.io/spring-security/site/docs/current/reference/html5/#servlet-saml2login
\n有几个问题:
\n新库(SAML2 服务提供程序)中的 SAMLEntryPoint 等效类或选项是什么?\n从 SP 启动 SSO 流程的过程是什么?
\n是否有一个示例演示了如何使用Okta作为ASP.NET MVC 5中基于OWIN的Identity系统的身份和成员资格提供程序?
tl;dr:尽管已注册,为什么我的还没有OidcUserService
注册?
我正在尝试OAuth2UserService
通过注册它来使用我自己的,如Spring Security 文档中所述。
OidcUserService.loadUser(OidcUserRequest)
但是,当我在]( https://docs.spring.io/spring-security/site/docs/current/api/org/springframework/security/oauth2/client/oidc/userinfo/OidcUserService.html上设置断点时#loadUser-org.springframework.security.oauth2.client.oidc.userinfo.OidcUserRequest- )方法,它一直点击com.okta.spring.boot.oauth.OktaOidcUserService
相反!我正在使用, com.okta.spring:okta-spring-boot-parent:1.2.2-SNAPSHOT
可能是什么问题?
我注册了我OidcUserService
喜欢的记录:
@SpringBootApplication
@EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true)
public class RedirectCodeFlowApplication {
public static void main(String[] args) {
SpringApplication.run(RedirectCodeFlowApplication.class, args);
}
@Configuration
static class WebConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
final OidcUserService delegate = new OidcUserService();
http.authorizeRequests().anyRequest().authenticated()
.and()
.oauth2Login()
.userInfoEndpoint()
.oidcUserService( (userRequest) -> {
System.out.println( "!!xXx!! never gets …
Run Code Online (Sandbox Code Playgroud) 我已按照https://developer.okta.com/quickstart/#/okta-sign-in-page/dotnet/aspnetcore中的确切步骤进行操作
这是我的 Startup.cs 中的内容
services.AddAuthentication(options =>
{
options.DefaultAuthenticateScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = OktaDefaults.MvcAuthenticationScheme;
})
.AddCookie()
.AddOktaMvc(new OktaMvcOptions
{
OktaDomain = "https://domain.oktapreview.com",
ClientId = "xxxxxxxxxxxxxxxxxxx",
ClientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
});
Run Code Online (Sandbox Code Playgroud)
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseAuthentication();
app.UseMvc();
}
Run Code Online (Sandbox Code Playgroud)
我已经使用 OpenID Connect强文本在 OKTA 中创建了该应用程序。当我启动应用程序时出现以下错误
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: '[PII is hidden]'.
Run Code Online (Sandbox Code Playgroud)
当我 ping https://domain.okta.com/oauth2/defau/v1/keys时 出现以下错误
{"errorCode":"E0000006","errorSummary":"You do not have permission to perform the requested action","errorLink":"E0000006","errorId":"oaeX0BPGXjlQ4qE1emo_gDk4w","errorCauses":[]}
Run Code Online (Sandbox Code Playgroud)
我不知道如何使用 OKTA 进行身份验证 OKTA 如何知道哪个用户正在尝试进行身份验证?
我使用 SAML2.0 插件将 jenkins 与 Okta 集成。
问题:当我单击 OKTA url 中的 jenkins 应用程序时,它会将请求重定向到https://jenkins.xxxx.com/samlLogout/并显示消息“您现在已从 Jenkins 注销,但这并未让您退出 SAML” ”。
我想使用 OKTA 凭证登录 jenkins,但 okta 将请求重定向到注销 url 并显示上述消息。
请让我知道如何将请求重定向到詹金斯主页(我的工作所在的位置)
我对这个 okta 雪花很陌生。我用的是scim。集成后,我尝试在 okta 中创建角色,或者至少将角色分配给从 okta 到雪花的用户。在文档中,它是通过推送组提到的。不确定如何在 okta 中创建角色。当我在 okta 中分配用户时,它在 Snowflake 中采用默认角色 public。我在 Snowflake 中创建了一个手动角色,并以 okta Provisioner 作为所有者。当我在 okta 中为用户分配该自定义角色时,默认情况下它会再次采用公共角色。关于这里的角色,我有什么遗漏的吗?谢谢。
okta ×10
spring ×2
.net ×1
android ×1
aws-cognito ×1
java ×1
javascript ×1
jenkins ×1
jwt ×1
okta-api ×1
owin ×1
redirect ×1
saml ×1
scim ×1
snowflake-cloud-data-platform ×1
spring-boot ×1