
    cۖi
                         S SK JrJrJr  S SKJr  S SKJrJrJ	r	J
r
  S SKJrJrJr   " S S\5      r " S S\5      r " S	 S
\5      r " S S\5      rg)    )GroupManagedServiceAccountModelUser)
ModelError)CredentialsOptionsHostOptionsOptionSambaOptions)CommandCommandErrorSuperCommandc            	       `    \ rS rSrSrSr\\\S.r	\
" SSSS\S	S
9\
" SSSSSS9/r  SS jrSrg)-cmd_service_account_group_msa_membership_show   z9Display who is able to view the service account password.%prog -H <URL> [options]	sambaoptscredoptshostopts--name+Name of managed service account (required).namestoreThelpdestactiontyperequiredz--jsonzOutput results in JSON format.output_formatstore_constjson)r   r   r   constNc           
         U R                  XU5      n [        R                  " Xd5      nUc  [	        SU S35      e UR
                   V	s0 s H  o[        R                  " XiSS9_M     n
n	US:X  aY  U R                  UR                  U
R                  5        V	Vs/ s H  u  pU(       a  UR                  OSU	 S3PM      snn	S.5        g [        S	UR                   3U R                  S
9  [        SU R                  S
9  U
R                  5        H5  u  pU(       a  UR                  OSU	 S3n[        SU 3U R                  S
9  M7     g ! [         a  n[	        U5      eS nAff = fs  sn	f ! [         a  n[	        U5      eS nAff = fs  snn	f )NGroup managed service account  not found.T)
object_sidpolymorphicr"   z<SID=>)dntrusteeszAccount-DN: filezYAccounts or groups that are able to retrieve this group managed service account password:z  )ldb_connectr   findr   r   r+   r   get
print_jsonr*   itemsprintoutf)selfr   r   r   r   r    ldbgmsaesidr+   trusteer*   s                S/usr/lib/python3/dist-packages/samba/netcmd/service_account/group_msa_membership.pyrun1cmd_service_account_group_msa_membership_show.run/   sv    xH=	"-223=D <!?v[QRR	"Y]YfYfgYfRUUYYsMMYfHg F"OOgg[c[i[i[kl[k<37WZZ%uAF[kl 
 L	*;myy" !) 0#*WZZ%uA2$idii0 !1-  	"q/!	" h 	"q/!	" msF   E
 E, E'*E, %F	

E$EE$'E, ,
F6FF NNNNN__name__
__module____qualname____firstlineno____doc__synopsisr
   r   r   takes_optiongroupsr	   strtakes_optionsr<   __static_attributes__r>       r;   r   r      sc    C)H "& 	xA7t	E 	x>#M	I	M FJ1rK   r   c            
       b    \ rS rSrSrSr\\\S.r	\
" SSSS\S	S
9\
" SSSS\S	S
9/r  SS jrSrg),cmd_service_account_group_msa_membership_addQ   zAdd a password viewer.r   r   r   r   r   r   Tr   --principalz1Principal sAMAccountName or Dn to add (required).	principalNc                    U R                  XU5      n [        R                  " Xd5      nUc  [	        SU S35      e [
        R                  " Xe5      n	U	c  [	        SU S35      e UR                  n
X;   a  [        SU SU 3U R                  S9  g UR                  U	5         UR                  U5        [        SU SU 3U R                  S9  g ! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f)Nr%   r&   Trustee 	Trustee 'z4' is already allowed to show managed passwords for: r,   z0' is now allowed to show managed passwords for: )r.   r   r/   r   r   r   get_sid_for_principalr+   r3   r4   add_trusteesaver5   r   r   r   r   rP   r6   r7   r8   r:   r+   s              r;   r<   0cmd_service_account_group_msa_membership_add.rune   s_    xH=	"-223=D <!?v[QRR	"00@G ?)K@AA	"}}H Ii[(\]a\bcyy" W%&		# Ii[(XY]X^_yy"A  	"q/!	"  	"q/!	"  	"q/!	"  &"1o%&^   C C- &D
 $D' 
C*C%%C*-
D7DD

D$DD$'
E1D<<Er>   r?   r@   r>   rK   r;   rM   rM   Q   se     )H "& 	xA7t	E 	}GcD	J	M FJ("rK   rM   c            
       b    \ rS rSrSrSr\\\S.r	\
" SSSS\S	S
9\
" SSSS\S	S
9/r  SS jrSrg)/cmd_service_account_group_msa_membership_remove   zRemove a password viewer.r   r   r   r   r   r   Tr   rO   z4Principal sAMAccountName or Dn to remove (required).rP   Nc                    U R                  XU5      n [        R                  " Xd5      nUc  [	        SU S35      e [
        R                  " Xe5      n	U	c  [	        SU S35      e UR                  n
X;  a  [        SU SU 3U R                  S9  g UR                  U	5         UR                  U5        [        SU SU 3U R                  S9  g ! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f! [         a  n[	        U5      eS nAff = f)Nr%   r&   rR   rS   z/' cannot currently show managed passwords for: r,   z0' removed access to show managed passwords for: )r.   r   r/   r   r   r   rT   r+   r3   r4   remove_trusteerV   rW   s              r;   r<   3cmd_service_account_group_msa_membership_remove.run   s_    xH=	"-223=D <!?v[QRR	"00@G ?)K@AA	"}}H "Ii[(WX\W]^yy" (&		# Ii[(XY]X^_yy"A  	"q/!	"  	"q/!	"  	"q/!	"  &"1o%&rY   r>   r?   r@   r>   rK   r;   r[   r[      se    #)H "& 	xA7t	E 	}JcD	J	M FJ("rK   r[   c                   B    \ rS rSrSr\" 5       \" 5       \" 5       S.rSr	g)(cmd_service_account_group_msa_membership   z7View and manage password retrieval for service account.)showaddremover>   N)
rA   rB   rC   rD   rE   r   rM   r[   subcommandsrJ   r>   rK   r;   ra   ra      s     A >?;=ACKrK   ra   N)samba.domain.modelsr   r   r   samba.domain.models.exceptionsr   samba.getoptr   r   r	   r
   samba.netcmdr   r   r   r   rM   r[   ra   r>   rK   r;   <module>rk      sP   , H G 5 N N < <21G 21j<"7 <"~<"g <"~| rK   