WALLET-ADMIN(8)

πŸ“¦ version 1.7, in debian trixie, ubuntu resolute, ubuntu stonking

WALLET-ADMIN(8) πŸ’…

okay bestie, so this is a page from the wallet manual β€” section 8, the big-admin-energy section β€” and it's literally your all-access pass to running the whole wallet show from the command line. let's get into it 🫢


✨ NAME ✨

wallet-admin β€” the wallet server's administrative commands, aka the group chat where the server itself takes orders from you πŸ’–


🌸 SYNOPSIS 🌸

wallet-admin command [args ...]

πŸ¦‹ DESCRIPTION πŸ¦‹

So wallet-admin is your command-line bestie for doing administrative stuff on the wallet system β€” think setting up a brand new database, or running reports, that kind of thing. You run it on the wallet server, as a user who actually has access to the wallet database and config. no random stranger energy here πŸ’€

Under the hood it's honestly kind of a thin wrapper? like, it's built around Wallet::Admin, and what it does is take your command string, turn it into a method call, and hand you back the results. simple. iconic. does exactly what it says ✨


πŸŽ€ OPTIONS πŸŽ€

wallet-admin takes no traditional options. periodt. that's the whole section, bestie β€” there's nothing hiding here πŸ™ˆ


πŸ‘‘ COMMANDS πŸ‘‘

πŸ’€ destroy

Deletes ALL the data in the wallet database and drops every single wallet-created table, putting the database right back into the state it was in before you ran initialize. it's giving factory reset, and not the cute kind 😭

⚠️ okay so this one is destructive and you cannot easily recover from it. because of that, wallet-admin will prompt you first to make absolutely sure you meant to do that. read the prompt. actually read it. πŸ’…

🌱 initialize <principal>

Feed it an empty database and it sets everything up for use with the wallet server β€” creates all the tables it needs, plus the initial metadata. it also creates an ACL named ADMIN, which is the ACL that holds administrative privileges over the whole wallet system, and then adds an ACL entry to it with a scheme of "krb5" and an instance of <principal>. that's the bootstrap move right there β€” it gets the authentication system standing up so that user can go on to make further changes to the ADMIN ACL and to the rest of the wallet database πŸ’–

For logging purposes, initialize uses "localhost" as the hostname and <principal> as the user when it records the history of the ADMIN ACL creation β€” and also for any subsequent actions needed to initialize the database. receipts! 🧾✨

Before you run initialize, the wallet system has to be configured. See Wallet::Config(3) for the deets. And depending on which database backend you're using, the database itself may also have to be created in advance. so like, do your prep first bestie 🌸

🌈 register (object | verifier) <type> <class>

Registers an implementation of a wallet object or an ACL verifier into the wallet database. The Perl class <class> gets registered as the implementation of an object of type <type>, or as an ACL verifier of scheme <type> β€” which is what lets you create objects of that type, or ACL lines with that scheme πŸ‘‘

All the object and ACL implementations that ship with wallet are already registered by default as part of database initialization. so this command is mainly for registering your own local implementations of extra object types or ACL schemes. iykyk πŸ’œ

⬆️ upgrade

Upgrades the database to the latest schema version, preserving data as much as possible. glow-up but for your schema 🌟


πŸ’– AUTHOR πŸ’–

Russ Allbery <eagle@eyrie.org>


Copyright 2008-2011, 2013 The Board of Trustees of the Leland Stanford Junior University

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

SPDX-License-Identifier: MIT


🫢 SEE ALSO 🫢

This program is part of the wallet system. The current version is available from https://www.eyrie.org/~eagle/software/wallet/ 🌈


and that's the whole page, bestie!! version 1.5, dated 2024-04-30 β€” go forth and admin responsibly, mwah πŸ’…πŸ’–βœ¨

πŸ“¦ where this page comes from