问题标签 [okta]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
71 浏览

python - 将自定义属性添加到 django 架构

我正在尝试使用 okta IDP 验证我用 python 编写的 django 应用程序。我几乎已经在 SP 端和 IDP 端配置了所有东西。现在我需要从 IDP 传递一个自定义变量,该变量断言 SP 用户是发布者、编辑者或管理员,并进一步将其保存到 django 格式数据库(在auth_user_groups表中)。有人尝试过这样做,或者有人对此有想法吗?

我可以通过 IDP 的属性映射获取自定义变量值。但这允许我仅将自定义属性保存在用户表上。如果我没有在这里明确说明我的问题,请告诉我。

0 投票
2 回答
959 浏览

php - OKTA SAML 签名验证 - PHP

我的应用程序 (PHP) 从 OKTA 获得具有签名值的 SAML 响应,并且我还拥有具有公钥的 OKTA 证书。我的应用程序执行以下操作,

  1. 从证书中获取公钥。
  2. 从发送给它的 SAML 中获取签名值。
  3. 现在,它使用函数 openssl_verify($data, $signature, $pubkeykey,"sha1WithRSAEncryption"); 由于 $data 是 OKTA 用于签署 saml 响应的内容,我不确定 $data 必须设置什么。

我的代码,

当我将 data 的值分配为发送到应用程序的 SAML 响应时,我总是得到 0。我错过了什么吗?

0 投票
1 回答
296 浏览

okta - 验证会话

我们目前支持移动和桌面应用程序。我们的产品有些独特。我们有自己的安全身份验证方法。但是,我的任务是集成 Okta 以验证客户 ActiveDirectory 中的凭据。他们目前是 Okta 的客户。

理想情况下,我想做的是对我们的 windows .NET 客户端进行编程以验证用户凭据,然后将一些信息(安全地)传递给我们的服务器应用程序,以便它可以验证会话,然后进一步调用 API 以获取用户属性。

我们目前不向我们的服务器发送明文密码。我们使用散列,然后将传入散列与持久散列进行比较。似乎解决这个问题的简单方法是只允许明文密码,然后让服务器对用户进行身份验证并完成所有工作,并将我们自己的令牌作为我们通常过程的一部分传回。

有没有办法在我们的客户端获取 SAML 令牌以在服务器端进行验证并访问 Okta?我是否必须在客户端生成 SAML 断言并将响应传递给服务器?

0 投票
1 回答
993 浏览

okta - 在 Okta 中激活已停用的用户

API 文档中不清楚是否可以在 Okta 中激活用户一旦被停用。我可以看到它们在被停用后进入取消配置状态,并且我知道用户将从任何应用程序中被拉出(全部根据文档),但文档中没有回答我的问题。

我可以进行更新以将用户的状态设置为“暂存”并使用更新的配置文件对象,然后调用激活吗?

0 投票
0 回答
406 浏览

python - 无法在 okta 中配置自定义属性

我在将自定义属性传递给 SP 时遇到问题。

详细信息:我正在为 IDP 使用 developerOKTA 管理员配置文件。我的 SP 是一个 python 应用程序,用户 Django/jinja/Django-CMS

我的应用attribute statement价值是这样的。

尝试1:

用户名|${user.userName}|urn:oasis:names:tc:SAML:2.0:attrname-format:basic, firstName|${user.firstName}|urn:oasis:names:tc:SAML:2.0:attrname-格式:基本,姓氏|${user.lastName}|urn:oasis:names:tc:SAML:2.0:attrname-format:basic, email|${user.email}|urn:oasis:names:tc:SAML: 2.0:attrname-format:basic, is_publisher|${template_saml_2_0.is_publisher}|urn:oasis:names:tc:SAML:2.0:attrname-format:basic, userRole|${template_saml_2_0.userRole}|urn:oasis:names: tc:SAML:2.0:attrname-format:basic,

其中,is_publisher(boolean 类型)和userRole(string 类型)是定义的自定义属性,并在两个位置(在用户配置文件和应用程序用户配置文件中)都给定了值。而template_saml_2_0是app 用户对象,user是用户对象。

接下来,我将这些变量映射在一起:

okta->app 的映射

user.is_publisher 映射到 is_publisher,并且

app->okta 的映射

appuser.is_publisher 映射到 is_publisher。

对其他属性进行类似操作。

单击应用程序 chiklet 时,此属性语句会生成“500 内部服务器错误”。此错误在 okta 调用 SP 之前触发。我发现我的 SP 日志中没有记录任何内容。而且我不知道如何跟踪 OKTA IDP 的日志。

尝试2:。

在这里,我从用户对象中获取自定义属性的值,并保持与尝试 1 相同。

is_publisher|${user.is_publisher}|urn:oasis:names:tc:SAML:2.0:attrname-format:basic, userRole|${user.userRole}|urn:oasis:names:tc:SAML:2.0:attrname-格式:基本,

现在,此更改为我提供了userRole(字符串类型)的值,而不是OKTA传递给 SP 的断言 xml 中的is_publisher (布尔类型)的值。我猜如果自定义属性只是字符串类型而不是任何其他类型,这将返回值。是这样吗?

你能告诉我哪里出错了吗?我需要根据我在 Attempt1 中未能完成的应用程序设置用户角色。而在 Attempt2 中,我只得到 String 类型 CustomAttribute 的值。

0 投票
3 回答
801 浏览

single-sign-on - 如何处理来自 OKTA 的 SAMLResponse?

我正在尝试通过 OKTA 实施 SSO。我可以通过

通过以下方式将字符串转换为 XML 格式

用户的信息包含在字符串 samlAssertion 中,如 X509Certificate、FirstName、LastName、Email 等。问题是如何检查它是否 validate?

0 投票
1 回答
926 浏览

asp.net-mvc - ASP.NET MVC 应用程序的 OKTA 身份验证

我必须开发一个 ASP.NET MVC 网站。对于身份验证,我们决定使用 OKTA 作为身份验证提供程序。我们不想使用 Okta API,但我们想使用 SAML 实现。有没有这方面的文章/指南?我也想知道我们如何将其扩展到 WCF 服务。所有这些都将托管在 Azure 中。

0 投票
1 回答
267 浏览

okta - okta NetDocuments 将错误的凭据传递给 ND?

我刚刚添加了NetDocuments应用程序并正在尝试登录用户。NetDocuments使用此消息拒绝凭据:

登录错误:80131501 SAML 请求 ID 无效
访问我们的支持页面寻求帮助。

并向我展示了他们的登录表单,效果很好。

NetDocuments在他们的登录页面上有 2 个字段:EmailUsername. 我们的帐户NetDocuments设置为使用用户名字段(使用电子邮件字段不起作用)。

我看到没有办法在Okta设置中选择它!那么,是否Okta将我的信息传递到用户名字段?还是电子邮件字段?

谢谢!

0 投票
1 回答
899 浏览

salesforce - 如何使用 okta 配置 salesforce 权限集?

我想在 okta 中有多个销售人员“应用程序”,每个都配置有配置。将有一个“基本”帐户,它实际上提供基本销售人员帐户。但后来我想在 okta 中配置额外的销售人员“应用程序”,它们只是提供(或删除)额外的权限集 - 向基本帐户添加或删除权限集。这些权限集表示授予或撤销对托管在同一 salesforce 组织中的自定义 force.com 应用程序的访问权限。

我尝试使用以下映射来执行此操作:

映射到:

这个想法是上面只会将“我的烫发集”权限集添加到销售人员帐户已经拥有的任何权限集。

但它给了我以下错误:

我也没有看到我有机会在哪里配置取消配置逻辑......这将是:

有什么方法可以实现我在这里尝试做的事情吗?

0 投票
1 回答
935 浏览

netsuite - 通过 Okta 为 SSO 配置 Netsuite:如果提供了“电子邮件”属性并且 NameId 是电子邮件,则两者必须匹配

我已将 Netsuite 设置为 Okta 中的单点登录应用程序,并将 Okta 设置为我在 Netsuite 中的身份提供者。为此,一切都在发挥作用。如果我在 Okta 中创建一个用户,其电子邮件地址与他们的用户名匹配,并允许他们访问 Netsuite 应用程序,他们就可以很好地登录到 Netsuite。

但是,如果他们的电子邮件字段与他们的用户名/登录名不同,netsuite 会抛出错误:

如果提供了“电子邮件”属性 (name@domain.com) 并且 NameId 是电子邮件 (name2@domain.com),则两者必须匹配。

Netsuite 关于完成 SAML 设置页面的帮助部分重申了这一事实:

如果同时使用 NameID 和 email 属性,这些属性的值必须相同。

我将 Netsuite 添加为 Okta 中的一个新应用程序,供我们内部产品的现有用户使用。这些现有用户已经设置了电子邮件地址格式的登录名,并且他们的电子邮件字段与他们的登录名不同。我正在尝试找到某种方法来适当地配置 Netsuite 或 Okta 中的 Netsuite 应用程序来规避上述要求。