S-JIS[2023-10-22]

Tsubakuro Credential

TsurugiTsubakuro(Java通信ライブラリー)のCredentialクラスのメモ。


概要

TsubakuroのCredentialは、Tsurugiサーバーに接続する際の認証情報を表すクラス。
CredentialはSessionを生成する際にSessionBuilderのwithCredentialメソッドで指定する。

import com.tsurugidb.tsubakuro.channel.common.connection.Credential;
    Credential credential = 〜;
    try (Session session = SessionBuilder.connect(endpoint).withCredential(credential).create(3, TimeUnit.SECONDS)) {
        〜
    }

Credentialの具象クラス(認証方法)は何種類かある。
しかし現時点ではTsurugiサーバーには認証が実装されていないので、何を指定しても接続できる。
したがって現時点ではNullCredentialを使っておけばいい。(SessionBuilderのデフォルトはNullCredential)


NullCredential

NullCredentialは認証無しを表すCredentialクラス。

import com.tsurugidb.tsubakuro.channel.common.connection.NullCredential;
public static Credential nullCredential() {
    return NullCredential.INSTANCE;
}

UsernamePasswordCredential

UsernamePasswordCredentialはユーザー名とパスワードを使用するCredentialクラス。

import com.tsurugidb.tsubakuro.channel.common.connection.UsernamePasswordCredential;
public static Credential userPasswordCredential() {
    return new UsernamePasswordCredential("name", "password");
}

RememberMeCredential

RememberMeCredentialは認証トークンを使用するCredentialクラス。

import com.tsurugidb.tsubakuro.channel.common.connection.RememberMeCredential;
public static Credential rememberMeCredential(String authenticatedToken) {
    return new RememberMeCredential(authenticatedToken);
}

FileCredential

FileCredentialは認証情報ファイルを使用するCredentialクラス。

import com.tsurugidb.tsubakuro.channel.common.connection.FileCredential;
public static Credential fileCredential(Path file) throws IOException {
    return FileCredential.load(file);
}

認証情報ファイルは以下のようにして作成する。

public static void dumpFileCredential(Path file) throws IOException {
    var credential = new FileCredential("name", "password");
    credential.dump(file);
}

なお、認証情報ファイルの実体はjsonファイル。


Tsubakuroへ戻る / Tsurugiへ戻る / 技術メモへ戻る
メールの送信先:ひしだま