google-api-ruby-client/generated/google/apis/oslogin_v1/classes.rb

208 lines
7.3 KiB
Ruby
Raw Normal View History

# Copyright 2015 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'
module Google
module Apis
module OsloginV1
# 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);
# `
# The JSON representation for `Empty` is empty JSON object ````.
class Empty
include Google::Apis::Core::Hashable
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
end
end
# A response message for importing an SSH public key.
class ImportSshPublicKeyResponse
include Google::Apis::Core::Hashable
# The user profile information used for logging in to a virtual machine on
# Google Compute Engine.
# Corresponds to the JSON property `loginProfile`
# @return [Google::Apis::OsloginV1::LoginProfile]
attr_accessor :login_profile
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@login_profile = args[:login_profile] if args.key?(:login_profile)
end
end
# The user profile information used for logging in to a virtual machine on
# Google Compute Engine.
class LoginProfile
include Google::Apis::Core::Hashable
# The primary email address that uniquely identifies the user.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# The list of POSIX accounts associated with the user.
# Corresponds to the JSON property `posixAccounts`
# @return [Array<Google::Apis::OsloginV1::PosixAccount>]
attr_accessor :posix_accounts
# A map from SSH public key fingerprint to the associated key object.
# Corresponds to the JSON property `sshPublicKeys`
# @return [Hash<String,Google::Apis::OsloginV1::SshPublicKey>]
attr_accessor :ssh_public_keys
# Indicates if the user is suspended. A suspended user cannot log in but
# their profile information is retained.
# Corresponds to the JSON property `suspended`
# @return [Boolean]
attr_accessor :suspended
alias_method :suspended?, :suspended
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@name = args[:name] if args.key?(:name)
@posix_accounts = args[:posix_accounts] if args.key?(:posix_accounts)
@ssh_public_keys = args[:ssh_public_keys] if args.key?(:ssh_public_keys)
@suspended = args[:suspended] if args.key?(:suspended)
end
end
# The POSIX account information associated with a Google account.
class PosixAccount
include Google::Apis::Core::Hashable
# Output only. A POSIX account identifier.
# Corresponds to the JSON property `accountId`
# @return [String]
attr_accessor :account_id
# The GECOS (user information) entry for this account.
# Corresponds to the JSON property `gecos`
# @return [String]
attr_accessor :gecos
# The default group ID.
# Corresponds to the JSON property `gid`
# @return [Fixnum]
attr_accessor :gid
# The path to the home directory for this account.
# Corresponds to the JSON property `homeDirectory`
# @return [String]
attr_accessor :home_directory
# Only one POSIX account can be marked as primary.
# Corresponds to the JSON property `primary`
# @return [Boolean]
attr_accessor :primary
alias_method :primary?, :primary
# The path to the logic shell for this account.
# Corresponds to the JSON property `shell`
# @return [String]
attr_accessor :shell
# System identifier for which account the username or uid applies to.
# By default, the empty value is used.
# Corresponds to the JSON property `systemId`
# @return [String]
attr_accessor :system_id
# The user ID.
# Corresponds to the JSON property `uid`
# @return [Fixnum]
attr_accessor :uid
# The username of the POSIX account.
# Corresponds to the JSON property `username`
# @return [String]
attr_accessor :username
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@account_id = args[:account_id] if args.key?(:account_id)
@gecos = args[:gecos] if args.key?(:gecos)
@gid = args[:gid] if args.key?(:gid)
@home_directory = args[:home_directory] if args.key?(:home_directory)
@primary = args[:primary] if args.key?(:primary)
@shell = args[:shell] if args.key?(:shell)
@system_id = args[:system_id] if args.key?(:system_id)
@uid = args[:uid] if args.key?(:uid)
@username = args[:username] if args.key?(:username)
end
end
# The SSH public key information associated with a Google account.
class SshPublicKey
include Google::Apis::Core::Hashable
# An expiration time in microseconds since epoch.
# Corresponds to the JSON property `expirationTimeUsec`
# @return [Fixnum]
attr_accessor :expiration_time_usec
# Output only. The SHA-256 fingerprint of the SSH public key.
# Corresponds to the JSON property `fingerprint`
# @return [String]
attr_accessor :fingerprint
# Public key text in SSH format, defined by
# <a href="https://www.ietf.org/rfc/rfc4253.txt" target="_blank">RFC4253</a>
# section 6.6.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@expiration_time_usec = args[:expiration_time_usec] if args.key?(:expiration_time_usec)
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
@key = args[:key] if args.key?(:key)
end
end
end
end
end