小编Mah*_*oya的帖子

自定义属性未传递到 AWS Cognito 创建的 ID_TOKEN

用户成功登录后,我无法在从 AWS Cognito 返回的ID_TOKEN 中获取自定义属性。

我试过的步骤:

1.创建用户池 2.创建应用客户端并检查自定义属性(customattrib1,customattrib2)

用户池屏幕:

在此处输入图片说明

检查应用程序客户端配置中的自定义属性

在此处输入图片说明

3.使用admin-create-user api创建用户

下图显示了用户属性的值:

在此处输入图片说明

4.在客户端应用程序中使用 aws-cognito-auth.js 登录的用户。返回的 ID 令牌不包含自定义属性。

ID_TOKEN

{
  "at_hash": "PKfjYDaiEty5mUOyJZlPQA",
  "sub": "639d5016-2bd3-4c6f-b82d-21ae38071b09",
  "email_verified": true,
  "iss": "https://cognito-idp.ap-south-1.amazonaws.com/ap-south-1_XXXXXXX",
  "phone_number_verified": true,
  "cognito:username": "testuser",
  "aud": "XYXYXYXYX",
  "token_use": "id",
  "auth_time": 1549349674,
  "phone_number": "##########",
  "exp": 1549353274,
  "iat": 1549349674,
  "email": "testuser@somedomain.com"
}
Run Code Online (Sandbox Code Playgroud)

我已经检查了下面的链接,其中包含有关此问题的一些信息,但到目前为止没有任何帮助。

在池创建后添加 Cognito 自定义属性?

如果用户池配置了 SAML 身份提供者,则 Cognito 用户池自定义属性不会显示在 ID 令牌中

如果用户池配置了 SAML 身份提供者,则 Cognito 用户池自定义属性不会显示在 ID 令牌中

https://www.reddit.com/r/aws/comments/a07dwg/cognito_add_custom_attribute_to_jwt_token/

请帮我弄清楚我是否遗漏了什么..

amazon-web-services openid-connect amazon-cognito aws-sdk aws-userpools

22
推荐指数
2
解决办法
7343
查看次数

是否有任何 API 可以获取印度 Pincode 的 PIN 码详细信息

我检查了下面的链接和 API。所有这些都过时了,没有最新的数据。

似乎下面的 API 是由政府来源公开的,但文档部分并不多 -

如果有人可以指向链接以获取最新数据,这将起作用。至少我会开始。

我尝试了下面的链接,我从这个链接得到的数据已经过时了。

postal-code addressbook

6
推荐指数
1
解决办法
4937
查看次数

Spring Boot Keycloak-仅承载-后端服务不起作用

我正在尝试使用 Keycloak 保护我的休息 api 和前端。

前端基于 Angular 4。

后端是使用 Spring Boot 构建的 rest api。

我在 keycloak 管理控制台中创建了两个客户端,在同一个领域(testRealm)。

前端客户端的 ACCESS-TYPE 是“Public”。

后端客户端(backendService) ACCESS-TYPE 是“Bearer-only”。

前端工作正常,并根据角色显示选项卡。

当我尝试点击/访问后端服务调用时,它在浏览器控制台中显示以下错误-

无法加载http://localhost:9099/api/transaction

预检响应具有无效的 HTTP 状态代码 401。

下面是我用来保护 rest api 的配置。

应用程序属性

server.contextPath=/test
server.port=9090

keycloak.realm: testRealm
keycloak.bearer-only: true
keycloak.auth-server-url: http://localhost:8080/auth
keycloak.ssl-required: external
keycloak.resource: backendService
keycloak.use-resource-role-mappings: true
keycloak.confidential-port: 0
keycloak.credentials.secret=dc04c236-d2b9-560e-b6b2-efa2064b2386
Run Code Online (Sandbox Code Playgroud)

ApiSecurityConfig.java(keycloak 适配器的 Spring 启动安全配置)

@Configuration
@EnableWebSecurity
@ComponentScan(basePackageClasses = KeycloakSecurityComponents.class)
public class ApiSecurityConfig extends KeycloakWebSecurityConfigurerAdapter {

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {

        KeycloakAuthenticationProvider keycloakAuthenticationProvider …
Run Code Online (Sandbox Code Playgroud)

spring-boot bearer-token openid-connect keycloak keycloak-services

5
推荐指数
0
解决办法
1万
查看次数