コード例 #1
0
 def Run(self, args):
   result = self.iam_client.projects_serviceAccounts_keys.Get(
       self.messages.IamProjectsServiceAccountsKeysGetRequest(
           name=iam_util.EmailAndKeyToResourceName(args.iam_account, args.key),
           publicKeyType=iam_util.PublicKeyTypeFromString(args.type)))
   self.WriteFile(args.output_file, result.publicKeyData)
   log.status.Print('written key [{0}] for [{2}] as [{1}]'.format(
       args.key, args.output_file, args.iam_account))
コード例 #2
0
 def _SetUpGetPublicKeyExpectations(self, iam_account, key_id='1234'):
     self.client.projects_serviceAccounts_keys.Get.Expect(
         request=self.msgs.IamProjectsServiceAccountsKeysGetRequest(
             name=iam_util.EmailAndKeyToResourceName(iam_account, key_id),
             publicKeyType=iam_util.PublicKeyTypeFromString('pem')),
         response=self.msgs.ServiceAccountKey(
             name=('projects/test-project/serviceAccounts/%s/keys/1234' %
                   iam_account),
             publicKeyData=b'key data goes here'))
コード例 #3
0
    def Run(self, args):
        key_ref = resources.REGISTRY.Parse(
            args.key,
            collection='iam.projects.serviceAccounts.keys',
            params={
                'serviceAccountsId': args.iam_account,
                'projectsId': '-'
            })
        key = key_ref.keysId

        result = self.iam_client.projects_serviceAccounts_keys.Get(
            self.messages.IamProjectsServiceAccountsKeysGetRequest(
                name=key_ref.RelativeName(),
                publicKeyType=iam_util.PublicKeyTypeFromString(args.type)))
        log.WriteToFileOrStdout(args.output_file,
                                content=result.publicKeyData,
                                binary=True)

        log.status.Print('written key [{0}] for [{2}] as [{1}]'.format(
            key, args.output_file, args.iam_account))