Files
cloudbeaver/server/bundles/io.cloudbeaver.service.auth/schema/service.auth.graphqls
T
2021-03-14 17:16:01 +03:00

87 lines
1.7 KiB
GraphQL

enum AuthCredentialEncryption {
none,
plain,
hash
}
type AuthCredentialInfo {
id: ID!
displayName: String!
description: String
# This field must be shown in admin panel
admin: Boolean
# This field must be shown in login form
user: Boolean
possibleValues: [String]
encryption: AuthCredentialEncryption
}
type AuthProviderInfo {
id: ID!
label: String!
icon: ID
description: String
defaultProvider: Boolean
#configurationParameters: [ObjectPropertyInfo]!
credentialParameters: [AuthCredentialInfo!]!
}
type UserAuthToken {
# Auth provider used for autgorization
provider: ID!
# Authorization time
loginTime: DateTime!
# Optional login message
message: String
# Auth origin
origin: ObjectOrigin!
}
type UserAuthInfo {
# User unique identifier
userId: String! @deprecated
# Human readable display name. May be null
displayName: String @deprecated
# Auth provider ID
authProvider: String! @deprecated
loginTime: DateTime! @deprecated
# Optional login message
message: String @deprecated
origin: ObjectOrigin! @deprecated
}
type UserInfo {
# User unique identifier
userId: String!
# Human readable display name. May be null
displayName: String
authTokens: [UserAuthToken!]!
}
extend type Query {
# Authorize user using specified auth provider
authLogin(provider: ID!, credentials: Object!): UserAuthInfo!
# Logouts user. If provider not specified then all authorizations are revoked from session.
authLogout(provider: ID): Boolean
activeUser: UserInfo
sessionUser: UserAuthInfo @deprecated
authProviders: [AuthProviderInfo!]!
}