我有一个受OpenAm Server保护的网站,并且在身份验证后访问页面工作正常.但是当我尝试重定向到页面并使用get方法传递信息时,我获得了禁止访问消息.
有没有办法使用get方法(或任何其他方法)将我的信息从源页面传递到目标页面,或者是否有任何配置要做到Web代理,以避免OpenSSO服务器拒绝我的访问.
我实际上使用IIS 7.0和最后一个Web代理版本3.0.4.
万分感谢任何传入的答案
我正在尝试将openam配置为身份提供程序来测试我的基于SAML的服务提供程序应用程序.
我搜索了很多,看到了openam的文档.openam支持很多东西,这可能是我现在不需要的东西.我不想阅读整篇文档,这些文档需要花费大量时间阅读我现在不想测试的内容.我甚至在http://docs.forgerock.org/en/openam/10.0.0/admin-guide/index/index.html上看到了聊天9"管理SAML 2.0 SSO" 但是在此之前需要配置很多东西. .
有没有快速入门指南来测试它作为基于saml的IdP?
编辑
不是很快,详细也很好.但我希望OpenAm成为身份提供者.SP是我们开发的Jetty上托管的应用程序.还要告诉我,我必须在SP上做些什么改变,比如应用程序的URL应该响应什么.
请注意,我对我提到的应用程序很陌生,因此我可能会错误地使用术语。我添加了一些图表来尽可能地解释自己。
我正在尝试在 APIMAN 中设置 Web 服务身份验证策略(内部使用 Keycloak)
到目前为止,我知道我在 Keycloak 中创建的身份提供程序 (OpenAM) 已正确配置,因为它正在登录页面上运行(参见下图 1)

我还通过 Keycloak 的 OpenID API 成功使用 access_token 来访问 Web 服务;但前提是用户凭证位于 Keycloak 中(与 OpenAM 相反)(参见图 2)

我想要实现的是通过 Keycloak 但使用身份提供者的凭据来验证此 Web 服务客户端,但我不知道如何执行此操作,也不知道是否可能。(见图3)

请注意,我还尝试了使用 OpenAM 背后的 LDAP 进行用户联合,它工作正常,但我想知道是否有办法通过 OpenAM 实现这一点。
我正在尝试在这里获取此Dockerfile- https://github.com/ForgeRock/forgeops/blob/release/6.5.0/docker/util/Dockerfile
并更改旧版本为Alpine linux(如下所示):
FROM alpine:3.7
...
RUN apk add --update ca-certificates \
&& apk add --update -t deps curl\
&& curl -L https://storage.googleapis.com/kubernetes-release/release/${KUBE_LATEST_VERSION}/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl \
&& chmod +x /usr/local/bin/kubectl \
&& apk del --purge deps \
&& apk add --update jq su-exec unzip curl bash openldap-clients \
&& rm /var/cache/apk/* \
&& mkdir -p $FORGEROCK_HOME \
&& addgroup -g 11111 forgerock \
&& adduser -s /bin/bash -h "$FORGEROCK_HOME" -u 11111 -D -G forgerock forgerock
Run Code Online (Sandbox Code Playgroud)
对其进行更改以使其脱离RHEL 7(我在下面的更改)
FROM ubi7-stigd:7.6 …Run Code Online (Sandbox Code Playgroud) 我想使用JMeter设置负载测试,以便使用SAMLv2与各种用户执行SP发起的SSO.这包括将所需AuthNRequest消息发布到身份提供商(IDP)的登录URL,还包括当前用户的凭据(用户名,密码).
在AuthNRequest必须签名和加密,所以我想离开这个给服务提供商(SP),抢,不知怎的,这样我就可以重新使用(但我不知道是否我需要做的是,在第一个地方-也许后续重定向足够了).
我发现很难理解要完成这些步骤.我不需要关于在JMeter中单击的位置的准确指导,而是需要更多关于所涉及的HTTP请求采样器(包括顺序),前后处理器和断言的概述.
我们有服务提供商支持SAML HTTP-POST和SAML HTTP-Redirect绑定以将其传输AuthNRequest到IDP.
任何帮助都会很棒!提前致谢.
我对Vladimir的Spring Security演示有一个问题.当我默认将绑定和断言使用者服务更改为HTTP-POST时,我收到以下错误...
IDPSSOFederate.doSSOFederate: Unable to do sso or federation.
com.sun.identity.saml2.common.SAML2Exception: Cannot resolve element with ID xxxx
...作为XMLSignatureException的结果.
我注意到OpenAM正在尝试将我重定向到http://localhost:8080/SSOPOST/metaAlias/idp指定的IdP元数据中http://localhost:8080/openam/SSOPOST/metaAlias/idp.
显然我收到了404错误,但我无法理解为什么它在没有应用程序上下文的情况下将我重定向到SSOPOST url.
向上滚动日志我可以看到更早的getRemoteServiceURL NullPointerException,但从我所看到的这是普通OpenAM日志的一部分?
我的配置使用默认的SOAP设置对OpenAM进行了良好的身份验证.为什么HTTP-POST会有所不同?
我们正在寻求实施开源身份管理系统,并将ForgeRock的堆栈确定为最佳实施技术.
然而,ForgeRock支持的高成本及其每用户定价模式是一个潜在的障碍.我们目前的用户群约为45K,但我们预计在未来两年内将达到1M.
因此,我们正在研究没有FR支持的情况.FR维护版本的缺乏似乎阻碍了这一点,所以我们很好奇其他人是否已经走这条路.
如果有博客或其他社区处理此主题,请指出我的总体方向.
谢谢.
我部署了OpenAM并创建了托管IDP。然后,我想将NodeJs配置为服务提供者,并用passport-saml实现SSO。为此,我必须将node.js应用程序注册为远程服务提供者。
我有两个问题:
为了将NodeJs应用程序注册为远程服务提供者,我必须告知OpenAM URL元数据所在的位置。我怎样才能通过passport-saml获得元数据?
如何配置passport-saml与OpenAM一起使用?
我做了以下步骤,但它抛出异常:
1.我在Windows Server 2003上安装了openam 10.0.0.
2.在同一台Windows服务器计算机上使用ssl配置tomcat.
3.配置正确,可以使用https访问openam网址.
4.安装openam客户端sdk在另一台机器上,这是ubuntu机器,从那个ubuntu机器我试图登录到openam服务器使用
AuthContext lc = new AuthContext("/","https://server.ensarm.com:8443/openam/namingservice");
AuthContext.IndexType indexType = AuthContext.IndexType.MODULE_INSTANCE;
lc.login(indexType, "DataStore");
return lc;
Run Code Online (Sandbox Code Playgroud)
但我得到以下例外:
ERROR: Naming service connection failed for https://server.ensarm.com:8443/openam/namingservice
com.iplanet.services.comm.client.SendRequestException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Run Code Online (Sandbox Code Playgroud)
我不明白可能是什么问题.由于我的java密钥库(ssl配置需要)是在Windows服务器机器上,我在ubuntu机器上没有密钥库,
要么
需要将密钥库导入到ubuntu机器中.请任何人帮我摆脱这个.
我正在尝试联合Office 365并将其用作服务提供商,但我似乎无法更改FederationSettings中的SigningCertificate信息.我正在尝试使用此powershell命令:
Set-MsolDomainAuthentication -IssuerUri $ entity -LogOffUri $ logout -PassiveLogOnUri $ url -PreferredAuthenticationProtocol SAMLP -SigningCertificate $ cert
此命令仅在我删除-SigningCertificate $ cert时有效.一旦我设置了联邦,我也无法更改SigningCertificate.我也没有使用ADFS.我非常感谢任何人可以提供的任何帮助,为什么这不起作用.
错误信息:
Set-MsolDomainAuthentication:参数值无效.参数名称:.在行:1 char:1 + Set-MsolDomainAuthentication -IssuerUri $ entity -LogOffUri $ logout -PassiveLogOn ...
CategoryInfo:OperationStopped:(:) [Set-MsolDomainAuthenticaion],MicrosoftOnlineException + FullyQualifiedErrorId:Microsoft.Online.Administration.Automation.ProprtyValidationException,Microsoft.Online.Administration.Automation.SetDomainAuthentication
我无法使用OpenAM验证用户令牌.特别是我应该创建什么类型的代理.有人可以推荐一个解决方案吗?
本质上,REST API将读取用户OpenAM tokenid并使用OpenAM验证令牌,然后OpenAM将返回包含用户名的数据.可以在REST API方法中使用该用户名来标识正在访问该方法的用户.
更简化的是如何使用OpenAM令牌获取OpenAM用户信息.
谢谢!
我目前正在使用 openAM 来保护我的一个使用 Java EE Web 代理的小型 Web 应用程序。有人试图访问该应用程序,他们被重定向到 openAM 实例,他们登录,然后转到该应用程序。简单的东西。
我想要的是 openAM 将成功使用的用户名传递给网络应用程序。我的理解是应该为此使用“会话属性”。在管理员中,我转到我的 Java EE webagent 并打开“应用程序”选项卡以查看“会话属性处理”。我看到 HTTP_COOKIE 是获取的选择。
1) 如果正确设置,我是否应该期望在 cookie 中以明文形式看到用户名?2)我在会话映射中输入什么值来获取用户名?如何在数据存储中找到与此对应的值?
谢谢
有人可以帮助我解决openAM中无效的cookie域,因为我是openAM新手并第一次配置它.
当我从安装在我的Windows PC中的tomcat运行openAM war文件时,我能够配置默认用户,但是当我尝试通过从linux运行openAM来创建默认用户时,我得到"无效的cookie域".