資格情報

資格情報は、Solana認証システムにおける認証機関を表します。資格情報は、誰が認証を発行できるか、またどのタイプの認証を発行できるかを定義します。各資格情報には、その権限の下で認証を作成できる承認された署名者のセットがあります。

構造

Credential構造体は、Solana認証システムにおける資格情報を表します。各資格情報は、認証を発行できる機関と、そのために承認された署名者を定義します。

型定義

Credential

export type Credential = {
discriminator: number; // Internal discriminator
authority: Address; // Authority public key
name: ReadonlyUint8Array; // Credential name
authorizedSigners: Array<Address>; // List of authorized signers
};

メソッド

資格情報の取得

メソッド説明パラメータ戻り値
fetchCredentialアドレスで単一の資格情報を取得rpc: RPCコンテキスト、address: 資格情報のアドレス、config?: 取得設定Promise<Account<Credential>>
fetchMaybeCredential資格情報を安全に取得、見つからない場合はnullを返すrpc: RPCコンテキスト、address: 資格情報のアドレス、config?: 取得設定Promise<MaybeAccount<Credential>>
fetchAllCredentialアドレスで複数の資格情報を取得rpc: RPCコンテキスト、addresses: 資格情報アドレスの配列、config?: 取得設定Promise<Account<Credential>[]>
fetchAllMaybeCredential複数の資格情報を安全に取得、見つからないものはスキップrpc: RPCコンテキスト、addresses: 資格情報アドレスの配列、config?: 取得設定Promise<MaybeAccount<Credential>[]>

シリアライゼーション

メソッド説明パラメータ戻り値
getCredentialEncoder資格情報データのエンコーダーを取得なしEncoder<CredentialArgs>
getCredentialDecoder資格情報データのデコーダーを取得なしDecoder<Credential>
getCredentialCodec資格情報データのコーデックを取得なしCodec<CredentialArgs, Credential>

使用例

単一の資格情報の取得

const credential = await fetchCredential(rpc, credentialAddress);
console.log("Credential name:", credential.name);

複数の資格情報の取得

const credentials = await fetchAllCredential(rpc, [
credential1Address,
credential2Address
]);
credentials.forEach((credential) =>
console.log("Credential:", credential.name)
);

安全な取得

const credential = await fetchMaybeCredential(rpc, credentialAddress);
if (credential) {
console.log("Credential found:", credential.name);
} else {
console.log("Credential not found");
}

重要な注意事項

  • discriminatorフィールドは内部で使用されるため、変更しないでください
  • authorityフィールドは、資格情報の管理権限を持つ者を決定します
  • authorizedSignersは、この資格情報の下で証明を作成することが許可されているアドレスの配列です
  • nameフィールドはバイト配列として保存されるため、アプリケーションのニーズに応じて適切にエンコード/デコードする必要があります
  • 承認された署名者のみが資格情報の下で証明を作成できます
  • 管理者は承認された署名者のリストを変更できます

Is this page helpful?

目次

ページを編集

管理運営

© 2026 Solana Foundation.
無断転載を禁じます。
つながろう