
    JF                        d Z ddlmZ ddlmZ ddlmZ dZ G d dej                        Z
 G d d	ej                        Z G d
 dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d dej                        Z G d  d!ej                        Z G d" d#ej                        Z G d$ d%ej                        Z G d& d'ej                        Z G d( d)ej                        Z G d* d+ej                        Z G d, d-ej                        Z G d. d/ej                        Z G d0 d1ej                        Z G d2 d3ej                        Z  G d4 d5ej                        Z! G d6 d7ej                        Z" ejF                  e d8d9        ejH                  e jJ                  d:d;        ejH                  e jJ                  d<d=       y>)?zGenerated message classes for oslogin version v1beta.

You can use OS Login to manage access to your VM instances using IAM roles.
    )absolute_import)messages)encodingosloginc                       e Zd ZdZy)Emptya!  A generic empty message that you can re-use to avoid defining duplicated
  empty messages in your APIs. A typical example is to use it as the request
  or the response type of an API method. For instance: service Foo { rpc
  Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
  N)__name__
__module____qualname____doc__     Slib/googlecloudsdk/generated_clients/apis/oslogin/v1beta/oslogin_v1beta_messages.pyr   r      s    r   r   c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej
                  d      Z	y)CGoogleCloudOsloginControlplaneRegionalV1betaSignSshPublicKeyRequesta  A request message for signing an SSH public key.

  Fields:
    appEngineInstance: The App Engine instance to sign the SSH public key for.
      Expected format:
      apps/{app}/services/{service}/versions/{version}/instances/{instance}
    computeInstance: The Compute instance to sign the SSH public key for.
      Expected format:
      projects/{project}/zones/{zone}/instances/{numeric_instance_id}
    serviceAccount: Optional. The service account for the instance. If the
      instance in question does not have a service account, this field should
      be left empty. If the wrong service account is provided, this operation
      will return a signed certificate that will not be accepted by the VM.
    sshPublicKey: Required. The SSH public key to sign.
              N)
r	   r
   r   r   	_messagesStringFieldappEngineInstancecomputeInstanceserviceAccountsshPublicKeyr   r   r   r   r      sR      ,i++A.)I))!,/(9((+.&&&q),r   r   c                   4    e Zd ZdZ ej
                  d      Zy)DGoogleCloudOsloginControlplaneRegionalV1betaSignSshPublicKeyResponsezThe response message for signing an SSH public key.

  Fields:
    signedSshPublicKey: The signed SSH public key to use in the SSH handshake.
  r   Nr	   r
   r   r   r   r   signedSshPublicKeyr   r   r   r   r   0        -y,,Q/r   r   c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)ImportSshPublicKeyResponsezA response message for importing an SSH public key.

  Fields:
    details: Detailed information about import results.
    loginProfile: The login profile information for the user.
  r   LoginProfiler   N)	r	   r
   r   r   r   r   detailsMessageFieldloginProfiler   r   r   r"   r"   :   s/     "I!!!$'''':,r   r"   c                      e Zd ZdZ ej
                  d       G d dej                               Z ej                  d      Z
 ej                  ddd	      Z ej                  d
dd	      Z ej                  dd      Zy)r#   a  The user profile information used for logging in to a virtual machine on
  Google Compute Engine.

  Messages:
    SshPublicKeysValue: A map from SSH public key fingerprint to the
      associated key object.

  Fields:
    name: Required. A unique user ID.
    posixAccounts: The list of POSIX accounts associated with the user.
    securityKeys: The registered security key credentials for a user.
    sshPublicKeys: A map from SSH public key fingerprint to the associated key
      object.
  additionalPropertiesc                   d    e Zd ZdZ G d dej
                        Z ej                  ddd      Zy)LoginProfile.SshPublicKeysValuea  A map from SSH public key fingerprint to the associated key object.

    Messages:
      AdditionalProperty: An additional property for a SshPublicKeysValue
        object.

    Fields:
      additionalProperties: Additional properties of type SshPublicKeysValue
    c                   Z    e Zd ZdZ ej
                  d      Z ej                  dd      Zy)2LoginProfile.SshPublicKeysValue.AdditionalPropertyzAn additional property for a SshPublicKeysValue object.

      Fields:
        key: Name of the additional property.
        value: A SshPublicKey attribute.
      r   SshPublicKeyr   N)	r	   r
   r   r   r   r   keyr%   valuer   r   r   AdditionalPropertyr,   b   s/    
 "I!!!$c$i$$^Q7er   r0   r   TrepeatedN)	r	   r
   r   r   r   Messager0   r%   r(   r   r   r   SshPublicKeysValuer*   V   s4    	8Y.. 	8 29112FTXYr   r4   r   PosixAccountr   Tr1   SecurityKeyr   r   N)r	   r
   r   r   r   MapUnrecognizedFieldsr   r3   r4   r   namer%   posixAccountssecurityKeyssshPublicKeysr   r   r   r#   r#   F   s     "8!!"89Z9,, Z :Z0 
		q	!$()((TJ-'''q4H,()(()=qA-r   r#   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)/OsloginProjectsLocationsSignSshPublicKeyRequesta}  A OsloginProjectsLocationsSignSshPublicKeyRequest object.

  Fields:
    googleCloudOsloginControlplaneRegionalV1betaSignSshPublicKeyRequest: A
      GoogleCloudOsloginControlplaneRegionalV1betaSignSshPublicKeyRequest
      resource to be passed as the request body.
    parent: Required. The parent for the signing request. Format:
      projects/{project}/locations/{location}
  r   r   r   TrequiredN)	r	   r
   r   r   r   r%   CgoogleCloudOsloginControlplaneRegionalV1betaSignSshPublicKeyRequestr   parentr   r   r   r=   r=   u   sB     I_	H^H^  `e  gh  IiE 9  T2&r   r=   c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z	 ej                  d      Z
 ej                  dd	      Zy
)"OsloginUsersGetLoginProfileRequesta  A OsloginUsersGetLoginProfileRequest object.

  Enums:
    ViewValueValuesEnum: The view configures whether to retrieve security keys
      information.

  Fields:
    name: Required. The unique ID for the user in format `users/{user}`.
    projectId: Required. The project ID of the Google Cloud Platform project.
    systemId: Optional. A system ID for filtering the results of the request.
    view: The view configures whether to retrieve security keys information.
  c                       e Zd ZdZdZdZdZy)6OsloginUsersGetLoginProfileRequest.ViewValueValuesEnum>  The view configures whether to retrieve security keys information.

    Values:
      LOGIN_PROFILE_VIEW_UNSPECIFIED: The default login profile view. The API
        defaults to the BASIC view.
      BASIC: Includes POSIX and SSH key information.
      SECURITY_KEY: Include security key information for the user.
    r   r   r   Nr	   r
   r   r   LOGIN_PROFILE_VIEW_UNSPECIFIEDBASICSECURITY_KEYr   r   r   ViewValueValuesEnumrE           &'"ELr   rK   r   Tr>   r   r   r   N)r	   r
   r   r   r   EnumrK   r   r8   	projectIdsystemId	EnumFieldviewr   r   r   rC   rC      sf    INN  
		q4	0$#i##A&)"Y""1%(			2A	6$r   rC   c                       e Zd ZdZ G d dej
                        Z ej                  dd      Z ej                  d      Z	 ej                  dd	      Z
 ej                  d
d      Z ej                  dd      Zy)%OsloginUsersImportSshPublicKeyRequesta  A OsloginUsersImportSshPublicKeyRequest object.

  Enums:
    ViewValueValuesEnum: The view configures whether to retrieve security keys
      information.

  Fields:
    parent: The unique ID for the user in format `users/{user}`.
    projectId: The project ID of the Google Cloud Platform project.
    regions: Optional. The regions to which to assert that the key was
      written. If unspecified, defaults to all regions. Regions are listed at
      https://cloud.google.com/about/locations#region.
    sshPublicKey: A SshPublicKey resource to be passed as the request body.
    view: The view configures whether to retrieve security keys information.
  c                       e Zd ZdZdZdZdZy)9OsloginUsersImportSshPublicKeyRequest.ViewValueValuesEnumrF   r   r   r   NrG   r   r   r   rK   rU      rL   r   rK   r   Tr>   r   r   r1   r-   r      N)r	   r
   r   r   r   rM   rK   r   rA   rN   regionsr%   r   rP   rQ   r   r   r   rS   rS      s|     INN  !9  T2&#i##A&)!I!!!d3'''':,			2A	6$r   rS   c                   8    e Zd ZdZ ej
                  dd      Zy)!OsloginUsersProjectsDeleteRequesta   A OsloginUsersProjectsDeleteRequest object.

  Fields:
    name: Required. A reference to the POSIX account to update. POSIX accounts
      are identified by the project ID they are associated with. A reference
      to the POSIX account is in format `users/{user}/projects/{project}`.
  r   Tr>   Nr	   r
   r   r   r   r   r8   r   r   r   rY   rY           
		q4	0$r   rY   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)4OsloginUsersProjectsLocationsSignSshPublicKeyRequesta  A OsloginUsersProjectsLocationsSignSshPublicKeyRequest object.

  Fields:
    parent: Required. The parent project and region for the signing request.
    signSshPublicKeyRequest: A SignSshPublicKeyRequest resource to be passed
      as the request body.
  r   Tr>   SignSshPublicKeyRequestr   N	r	   r
   r   r   r   r   rA   r%   signSshPublicKeyRequestr   r   r   r]   r]      3     !9  T2&2I223LaPr   r]   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)0OsloginUsersProjectsProvisionPosixAccountRequesta  A OsloginUsersProjectsProvisionPosixAccountRequest object.

  Fields:
    name: Required. The unique ID for the user in format
      `users/{user}/projects/{project}`.
    provisionPosixAccountRequest: A ProvisionPosixAccountRequest resource to
      be passed as the request body.
  r   Tr>   ProvisionPosixAccountRequestr   N)	r	   r
   r   r   r   r   r8   r%   provisionPosixAccountRequestr   r   r   rc   rc      s4     
		q4	0$!7!7!78VXY!Zr   rc   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)0OsloginUsersProjectsZonesSignSshPublicKeyRequestzA OsloginUsersProjectsZonesSignSshPublicKeyRequest object.

  Fields:
    parent: Required. The parent project and region for the signing request.
    signSshPublicKeyRequest: A SignSshPublicKeyRequest resource to be passed
      as the request body.
  r   Tr>   r^   r   Nr_   r   r   r   rg   rg      ra   r   rg   c                   ^    e Zd ZdZ ej
                  dd      Z ej                  dd      Zy)&OsloginUsersSshPublicKeysCreateRequestzA OsloginUsersSshPublicKeysCreateRequest object.

  Fields:
    parent: Required. The unique ID for the user in format `users/{user}`.
    sshPublicKey: A SshPublicKey resource to be passed as the request body.
  r   Tr>   r-   r   N)	r	   r
   r   r   r   r   rA   r%   r   r   r   r   ri   ri      s1     !9  T2&''':,r   ri   c                   8    e Zd ZdZ ej
                  dd      Zy)&OsloginUsersSshPublicKeysDeleteRequesta  A OsloginUsersSshPublicKeysDeleteRequest object.

  Fields:
    name: Required. The fingerprint of the public key to update. Public keys
      are identified by their SHA-256 fingerprint. The fingerprint of the
      public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.
  r   Tr>   NrZ   r   r   r   rk   rk   
  r[   r   rk   c                   8    e Zd ZdZ ej
                  dd      Zy)#OsloginUsersSshPublicKeysGetRequesta  A OsloginUsersSshPublicKeysGetRequest object.

  Fields:
    name: Required. The fingerprint of the public key to retrieve. Public keys
      are identified by their SHA-256 fingerprint. The fingerprint of the
      public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.
  r   Tr>   NrZ   r   r   r   rm   rm     r[   r   rm   c                       e Zd ZdZ ej
                  dd      Z ej                  dd      Z ej
                  d      Z	y)	%OsloginUsersSshPublicKeysPatchRequesta  A OsloginUsersSshPublicKeysPatchRequest object.

  Fields:
    name: Required. The fingerprint of the public key to update. Public keys
      are identified by their SHA-256 fingerprint. The fingerprint of the
      public key is in format `users/{user}/sshPublicKeys/{fingerprint}`.
    sshPublicKey: A SshPublicKey resource to be passed as the request body.
    updateMask: Mask to control which fields get updated. Updates all if not
      present.
  r   Tr>   r-   r   r   N)
r	   r
   r   r   r   r   r8   r%   r   
updateMaskr   r   r   ro   ro   "  sC    	 
		q4	0$''':,$y$$Q'*r   ro   c                      e Zd ZdZ G d dej
                        Z ej                  d      Z ej                  d      Z	 ej                  d      Z ej                  d      Z ej                  d      Z ej                  dd	      Z ej                   d
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)r5   aT  The POSIX account information associated with a Google account.

  Enums:
    OperatingSystemTypeValueValuesEnum: The operating system type where this
      account applies.

  Fields:
    accountId: Output only. A POSIX account identifier.
    gecos: The GECOS (user information) entry for this account.
    gid: The default group ID.
    homeDirectory: The path to the home directory for this account.
    name: Output only. The canonical resource name.
    operatingSystemType: The operating system type where this account applies.
    primary: Only one POSIX account can be marked as primary.
    shell: The path to the logic shell for this account.
    systemId: System identifier for which account the username or uid applies
      to. By default, the empty value is used.
    uid: The user ID.
    username: The username of the POSIX account.
  c                       e Zd ZdZdZdZdZy)/PosixAccount.OperatingSystemTypeValueValuesEnuma-  The operating system type where this account applies.

    Values:
      OPERATING_SYSTEM_TYPE_UNSPECIFIED: The operating system type associated
        with the user account information is unspecified.
      LINUX: Linux user account information.
      WINDOWS: Windows user account information.
    r   r   r   N)r	   r
   r   r   !OPERATING_SYSTEM_TYPE_UNSPECIFIEDLINUXWINDOWSr   r   r   "OperatingSystemTypeValueValuesEnumrs   I  s     )*%EGr   rw   r   r   r   r   rV            	   
      N)r	   r
   r   r   r   rM   rw   r   	accountIdgecosIntegerFieldgidhomeDirectoryr8   rP   operatingSystemTypeBooleanFieldprimaryshellrO   uidusernamer   r   r   r5   r5   3  s    *9>>  $i##A&)
)


"%	q!#')''*-			q	!$+	++,PRST"I""1%'
)


"%"Y""1%(	r"#"Y""2&(r   r5   c                   8    e Zd ZdZ ej
                  dd      Zy)rd   a,  A request message for creating a POSIX account entry.

  Fields:
    regions: Optional. The regions to wait for a POSIX account to be written
      to before returning a response. If unspecified, defaults to all regions.
      Regions are listed at https://cloud.google.com/about/locations#region.
  r   Tr1   N)r	   r
   r   r   r   r   rW   r   r   r   rd   rd   c  s     "I!!!d3'r   rd   c                       e Zd ZdZ ej
                  d      Z ej
                  d      Z ej
                  d      Z ej                  dd      Z
 ej                  dd      Zy	)
r6   a  The credential information for a Google registered security key.

  Fields:
    deviceNickname: The security key nickname explicitly set by the user.
    privateKey: Hardware-backed private key text in SSH format.
    publicKey: Public key text in SSH format, defined by
      [RFC4253]("https://www.ietf.org/rfc/rfc4253.txt") section 6.6.
    universalTwoFactor: The U2F protocol type.
    webAuthn: The Web Authentication protocol type.
  r   r   r   UniversalTwoFactorr   WebAuthnrV   N)r	   r
   r   r   r   r   deviceNickname
privateKey	publicKeyr%   universalTwoFactorwebAuthnr   r   r   r6   r6   o  si    	 )9((+.$y$$Q'*#i##A&)-y--.BAF#Y##J2(r   r6   c                   4    e Zd ZdZ ej
                  d      Zy)r^   zgA SignSshPublicKeyRequest object.

  Fields:
    sshPublicKey: Required. The SSH public key to sign.
  r   N)r	   r
   r   r   r   r   r   r   r   r   r^   r^     s     '&&q),r   r^   c                   4    e Zd ZdZ ej
                  d      Zy)SignSshPublicKeyResponsezA SignSshPublicKeyResponse object.

  Fields:
    signedSshPublicKey: The signed SSH public key to use in the SSH handshake.
  r   Nr   r   r   r   r   r     r    r   r   c                       e Zd ZdZ ej
                  d      Z ej                  d      Z ej                  d      Z	 ej                  d      Z
y)r-   a  The SSH public key information associated with a Google account.

  Fields:
    expirationTimeUsec: An expiration time in microseconds since epoch.
    fingerprint: Output only. The SHA-256 fingerprint of the SSH public key.
    key: Required. Public key text in SSH format, defined by
      [RFC4253](https://www.ietf.org/rfc/rfc4253.txt) section 6.6.
    name: Output only. The canonical resource name.
  r   r   r   r   N)r	   r
   r   r   r   r   expirationTimeUsecr   fingerprintr.   r8   r   r   r   r-   r-     sR     .y--a0%	%%a(+	a #			q	!$r   r-   c                       e Zd ZdZ G d dej
                        Z G d dej
                        Z ej                  dd      Z	 ej                  d      Z ej                  ddd	
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Z ej"                  dd
      Z ej                  d      Z ej                  d      Z ej                  d      Z ej                  d      Zy)StandardQueryParametersa4  Query parameters accepted by all methods.

  Enums:
    FXgafvValueValuesEnum: V1 error format.
    AltValueValuesEnum: Data format for response.

  Fields:
    f__xgafv: V1 error format.
    access_token: OAuth access token.
    alt: Data format for response.
    callback: JSONP
    fields: Selector specifying which fields to include in a partial response.
    key: API key. Your API key identifies your project and provides you with
      API access, quota, and reports. Required unless you provide an OAuth 2.0
      token.
    oauth_token: OAuth 2.0 token for the current user.
    prettyPrint: Returns response with indentations and line breaks.
    quotaUser: Available to use for quota purposes for server-side
      applications. Can be any arbitrary string assigned to a user, but should
      not exceed 40 characters.
    trace: A tracing token of the form "token:<tokenid>" to include in api
      requests.
    uploadType: Legacy upload protocol for media (e.g. "media", "multipart").
    upload_protocol: Upload protocol for media (e.g. "raw", "multipart").
  c                       e Zd ZdZdZdZdZy)*StandardQueryParameters.AltValueValuesEnumzData format for response.

    Values:
      json: Responses with Content-Type of application/json
      media: Media download with context-dependent Content-Type
      proto: Responses with Content-Type of application/x-protobuf
    r   r   r   N)r	   r
   r   r   jsonmediaprotor   r   r   AltValueValuesEnumr     s     DEEr   r   c                       e Zd ZdZdZdZy)-StandardQueryParameters.FXgafvValueValuesEnumzVV1 error format.

    Values:
      _1: v1 error format
      _2: v2 error format
    r   r   N)r	   r
   r   r   _1_2r   r   r   FXgafvValueValuesEnumr     s     
B	
Br   r   r   r   r   r   )defaultr   rV   rx   ry   rz   Tr{   r|   r}      N)r	   r
   r   r   r   rM   r   r   rP   f__xgafvr   access_tokenaltcallbackfieldsr.   oauth_tokenr   prettyPrint	quotaUsertrace
uploadTypeupload_protocolr   r   r   r   r     s   4
9>> 
inn  !Y  !8!<(&&&q),	0!VD#"Y""1%( 9  #&	a #%	%%a(+&	&&q$7+#i##A&)
)


#%$y$$R(*)I))"-/r   r   c                   4    e Zd ZdZ ej
                  d      Zy)r   ztSecurity key information specific to the U2F protocol.

  Fields:
    appId: Application ID for the U2F protocol.
  r   N)r	   r
   r   r   r   r   appIdr   r   r   r   r     s      )


"%r   r   c                   4    e Zd ZdZ ej
                  d      Zy)r   zSecurity key information specific to the Web Authentication protocol.

  Fields:
    rpId: Relying party ID for Web Authentication.
  r   N)r	   r
   r   r   r   r   rpIdr   r   r   r   r     s     
		q	!$r   r   r   z$.xgafvr   1r   2N)&r   
__future__r   apitools.base.protorpcliter   r   apitools.base.pyr   packager3   r   r   r   r"   r#   r=   rC   rS   rY   r]   rc   rg   ri   rk   rm   ro   r5   rd   r6   r^   r   r-   r   r   r   AddCustomJsonFieldMappingAddCustomJsonEnumMappingr   r   r   r   <module>r      s>   ' < % I *)J[J[ *.09K\K\ 0	;!2!2 	;,B9$$ ,B^3i6G6G 37):): 7B"7I,=,= "7J	1	(9(9 	1
Q9;L;L 
Q[y7H7H [
Qy7H7H 
Q	;Y->-> 	;	1Y->-> 	1	1)*;*; 	1(I,=,= ("-'9$$ -'`	49#4#4 	43)## 3&*i// *0y00 0"9$$ ""<.i// <.~#** #"y   " # " "Z4 ! ! !114> ! ! !114>r   