@@ -205,6 +205,26 @@ def list_secrets(self):
205205 self .login ()
206206 self .print (self .b .my_secrets .list (), ignore_silent = True )
207207
208+ def list_approvals (self ):
209+ self .login ()
210+ approvals = []
211+ for approval in self .b .my_access .list_approvals ():
212+ approval .pop ('resource' , None )
213+ approval .pop ('consumer' , None )
214+ approval .pop ('timeToApprove' , None )
215+ approval .pop ('validFor' , None )
216+ approval .pop ('action' , None )
217+ approval .pop ('approvers' , None )
218+ approval .pop ('expirationTimeApproval' , None )
219+ approval .pop ('updatedAt' , None )
220+ approval .pop ('actionBy' , None )
221+ approval .pop ('validForInDays' , None )
222+ approvals .append (approval )
223+
224+ approvals = sorted (approvals , key = lambda x : x ['createdAt' ])
225+ approvals .reverse ()
226+ self .print (approvals , ignore_silent = True )
227+
208228 def list_profiles (self , checked_out : bool = False ):
209229 self .login ()
210230 self ._set_available_profiles ()
@@ -1003,4 +1023,10 @@ def aws_console(profile, duration, browser):
10031023 browser = webbrowser .get (using = browser )
10041024 browser .open (console_url )
10051025
1026+ def request_disposition (self , request_id , decision ):
1027+ self .login ()
10061028
1029+ if decision == 'approve' :
1030+ self .b .my_access .approve_request (request_id = request_id )
1031+ if decision == 'reject' :
1032+ self .b .my_access .reject_request (request_id = request_id )
0 commit comments