Class AuthDomainDigest
- All Implemented Interfaces:
Proxy
Server-side "Digest" authentication.
AuthDomainDigest handles the server side of HTTP "Digest"
authentication.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classAuthDomainDigest.Builder<B extends AuthDomainDigest.Builder<B>>Inner class implementing a builder pattern to construct a GObject with properties.Nested classes/interfaces inherited from class AuthDomain
AuthDomain.AuthDomain$Impl, AuthDomain.AuthDomainClassNested classes/interfaces inherited from class GObject
GObject.NotifyCallback, GObject.ObjectClass -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new AuthDomainDigest.AuthDomainDigest(MemorySegment address) Create a AuthDomainDigest instance for the provided memory address.AuthDomainDigest(String optname1, Object... varargs) Creates aAuthDomainDigest. -
Method Summary
Modifier and TypeMethodDescriptionprotected AuthDomainDigestasParent()Return this instance as if it were its parent type.static AuthDomainDigest.Builder<? extends AuthDomainDigest.Builder> builder()AAuthDomainDigest.Builderobject constructs aAuthDomainDigestwith the specified properties.static StringencodePassword(String username, String realm, String password) Encodes the username/realm/password triplet for Digest authentication.static MemoryLayoutThe memory layout of the native struct.static @Nullable TypegetType()Get the GType of the AuthDomainDigest class.voidsetAuthCallback(@Nullable AuthDomainDigestAuthCallback callback) Sets the callback that this AuthDomainDigest will use to authenticate incoming requests.Methods inherited from class AuthDomain
accepts, accepts, addPath, challenge, checkPassword, covers, getRealm, removePath, setFilter, setGenericAuthCallbackMethods inherited from class GObject
addToggleRef, addWeakPointer, bindProperty, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, connect, constructed, disconnect, dispatchPropertiesChanged, dispose, dupData, dupQdata, emit, emitNotify, finalize_, forceFloating, freezeNotify, get, getData, getProperty, getProperty, getProperty, getQdata, getv, interfaceFindProperty, interfaceInstallProperty, interfaceListProperties, isFloating, newInstance, newInstance, newv, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, removeWeakPointer, replaceData, replaceQdata, runDispose, set, setData, setDataFull, setProperty, setProperty, setProperty, setQdata, setQdataFull, setv, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref, withPropertiesMethods inherited from class TypeInstance
callParent, callParent, cast, getPrivate, readGClass, writeGClassMethods inherited from class ProxyInstance
equals, handle, hashCode
-
Constructor Details
-
AuthDomainDigest
Create a AuthDomainDigest instance for the provided memory address.- Parameters:
address- the memory address of the native object
-
AuthDomainDigest
Creates a
AuthDomainDigest.You must set the
AuthDomain:realmproperty, to indicate the realm name to be returned with the authentication challenge to the client. Other parameters are optional.- Parameters:
optname1- name of first option, ornullvarargs- option name/value pairs
-
AuthDomainDigest
public AuthDomainDigest()Create a new AuthDomainDigest.
-
-
Method Details
-
getType
Get the GType of the AuthDomainDigest class.- Returns:
- the GType
-
getMemoryLayout
The memory layout of the native struct.- Returns:
- the memory layout
-
asParent
Return this instance as if it were its parent type. Comparable to the Javasuperkeyword, but ensures the parent typeclass is also used in native code.- Overrides:
asParentin classAuthDomain- Returns:
- the instance as if it were its parent type
-
encodePassword
Encodes the username/realm/password triplet for Digest authentication.
That is, it returns a stringified MD5 hash of
username,realm,andpasswordconcatenated together. This is the form that is needed as the return value ofAuthDomainDigest's auth handler.For security reasons, you should store the encoded hash, rather than storing the cleartext password itself and calling this method only when you need to verify it. This way, if your server is compromised, the attackers will not gain access to cleartext passwords which might also be usable at other sites. (Note also that the encoded password returned by this method is identical to the encoded password stored in an Apache .htdigest file.)
- Parameters:
username- a usernamerealm- an auth realm namepassword- the password forusernameinrealm- Returns:
- the encoded password
-
setAuthCallback
Sets the callback that this AuthDomainDigest will use to authenticate incoming requests.
For each request containing authorization, this AuthDomainDigest will invoke the callback, and then either accept or reject the request based on
callback'sreturn value.You can also set the auth callback by setting the
AuthDomainDigest:auth-callbackandAuthDomainDigest:auth-dataproperties, which can also be used to set the callback at construct time.- Parameters:
callback- the callback
-
builder
AAuthDomainDigest.Builderobject constructs aAuthDomainDigestwith the specified properties. Use the variousset...()methods to set properties, and finish construction withAuthDomainDigest.Builder.build().- Returns:
- the builder object
-