Google oauth - 使用access_token获取分配给用户的角色

时间:2018-05-17 10:56:33

标签: oauth-2.0 google-cloud-platform google-oauth roles google-oauth2

是否可以从Google OAUTH服务器生成的访问令牌或ID令牌中获取分配给用户的角色?

1 个答案:

答案 0 :(得分:0)

有一种方法可以做到:

  • 首先,您将使用与该帐户相对应的访问令牌。使用访问令牌调用tokeninfo endpoint来检索帐户的电子邮件(从JSON响应正文中)。返回电子邮件的URL将是:
#include <SD.h>
#include <SPI.h>

File SD_File;

int pinCS = 10;

char cr;


void setup() {
  Serial.begin(9600);
  SD.begin();

  SD_File = SD.open("test.txt", FILE_WRITE);  
  SD_File.println("hello");
  SD_File.close();

  SD_File = SD.open("test.txt");
  while(true){
    cr = SD_File.read();
    if((cr == '\n') && ("LAST LINE?"))
        break;
    Serial.print(cr);
    }
  SD_File.close();

}

void loop() {

}
  • 下一步是检索所选项目成员的IAM角色,并检查上一步中的电子邮件是否在其中(如果是,则扮演哪个角色):

通过使用HTTP请求调用getIamPolicy()来获取现有的IAM策略(将url = "https://www.googleapis.com/oauth2/v1/tokeninfo?fields=email&access_token=" + access_token; 替换为您感兴趣的项目:

PROJECT-ID

回复正文包含成员电子邮件及其角色。