AWS で IAM ユーザに請求情報へのアクセス許可を付与する
AWS で root ユーザ以外の IAM ユーザが請求情報にアクセスする為にはアカウント情報の設定変更が必要になります。 今回は「アカウント設定を変更し、IAM ユーザでも請求情報にアクセス出来る設定変更手順」をメモしておきます。 勿論、リスクもありますので自己責任で設定してください。
AWS で root ユーザ以外の IAM ユーザが請求情報にアクセスする為にはアカウント情報の設定変更が必要になります。 今回は「アカウント設定を変更し、IAM ユーザでも請求情報にアクセス出来る設定変更手順」をメモしておきます。 勿論、リスクもありますので自己責任で設定してください。
Python から BOX へアクセスする方法は以下などが考えられます。
| No. | 方法 | GitHub ページ | 補足 |
|---|---|---|---|
| 1 | REST API を直接、呼び出す | - | 抽象化されていない為、利用がやや大変 |
| 2 | Pythoh SDK を利用する | Box Python SDK | サポート終了予定 |
| 3 | Python SDK (Generated) を利用する | Box Python SDK GENERATED | 今後の主流? |
2 番目の Python SDK は Python SDK (公式サポート終了) のインストール ページで以下のように記載されており、サポート終了予定です。 今後、積極的に利用するのは躊躇われます。
Python SDKは、現在メンテナンスモードであり、まもなく公式サポートが終了する予定です。つまり、実装されるのは重要なセキュリティ更新プログラムとバグ修正のみになります。自動生成されたPython SDKを使用することをお勧めします。
3 番目の Python SDK (Generated) は Python SDK (Generated) のインストール ページで以下のように記載されています。
Pythonプロジェクトでは、自動生成されたBox Python SDKを使用してBox APIを呼び出すことができます。この次世代のSDKには、開発者エクスペリエンスを向上させ、Boxコンテンツクラウドとの統合を効率化することを目的とした新機能が備わっています。
今回は Python SDK (Generated) を利用し、Python から Box へ JWT 認証ログインするサンプルスクリプトをメモしておきます。
asdf と似たバージョンマネージャに mise があります。 about には mise の特徴として 3 点、挙げられています。
Its functionality is grouped into 3 categories described below.
mise installs and manages dev tools/runtimes like node, python, or terraform both simplifying installing these tools and allowing you to specify which version of these tools to use in different projects. mise supports hundreds of dev tools.
mise manages environment variables letting you specify configuration like AWS_ACCESS_KEY_ID that may differ between projects. It can also be used to automatically activate a Python virtualenv when entering projects too.
mise is a task runner that can be used to share common tasks within a project among developers and make things like running tasks on file changes easy.
今回は mise を使って Python をインストールし、更に mise と uv を連携させ、uv で作成した venv 環境を利用する手順をメモしておきます。 尚、公式サイトには mise と Python を組み合わせて利用する際の設定例が記載された Mise + Python Cookbook というページもあります。
FortiGate の管理画面はデフォルトでタイムアウト時間が 5 分に設定されています。 この値は 1 〜 480 分の間で変更することが出来ます。
Python の DrissionPage を利用すると Web ブラウザの操作を自動化することが出来ます。 現時点でサポートしている環境については下記の記載があります。
- Support system: Windows、Linux、Mac
- Python version:more than 3.6
- Support browser: Chromium kernel(eg. Chrome, Edge),electron
このメモでは DrissionPage の ChromiumPage を使って Web ページを取得する、簡単なサンプルをメモしておきます。 尚、DrissionPage のドキュメントページ は中国語だけのようで、英語など他の言語の提供は無いようです…
asdf は様々なランタイムを管理出来るバージョンマネージャです。 Golang で実装されています。 ただ、後発の Rust で実装された mise (旧名は rtx) は「asdf 用のプラグインは全て使えるが、asdf より速い」とうたっています。 これを受けてなのか、asdf は バージョン 0.16.0 の Changelog に下記の記載があります。 記載内容によると「バージョン 0.16.0 からより速く、シンプルで、メンテナンスし易いように書き直した」ようです。
Rewrite asdf in Golang The rewrite in Go was spread across 88 pull requests that are all included in this release. The primary goal of the rewrite was to create a codebase that was faster, simpler and easier to maintain. The rewrite tries to maintain feature parity with the previous version. However, a number of breaking changes were introduced. Some of these were due to the change of language, a few out of a desire to simplify the code, and some to improve the user experience. For the full list of breaking changes and the upgrade guide visit the Upgrading to 0.16.0 page on the asdf website. It is highly recommended that you read this guide before upgrading.
ですが、私の macOS 環境では 0.15 系から 0.16.1 へバージョンアップしたところ、下記のエラーが出るようになってしまいました。
/Users/USERNAME/.zshrc:.:10: no such file or directory: /opt/homebrew/opt/asdf/libexec/asdf.sh
.zshrc では バージョン 0.15 までのガイド に従って以下のように設定してありましたが、これがエラーになっているようです。
# asdf
. /opt/homebrew/opt/asdf/libexec/asdf.sh
以前に CML でノードライセンスを消費するノード・消費しないノード というメモを書きました。 CML は「同時に起動出来るノード数」は「インストールされているノードライセンス数」で決定されます。 これはあくまで「同時起動数」であり、起動しなければ無制限にノードを配置出来ます。 ライセンスがインストールされていない場合の挙動はバージョンによって異なります。
| バージョン | ライセンス未インストール時の挙動 |
|---|---|
| 2.8.0 未満 | ノードは 1 台も起動出来ない (サードパーティノードであっても起動出来ない) |
| 2.8.0 以降 | ノードは 5 台まで起動出来る (6 台以上起動するとエラーになる) |
ノードライセンスを超過した場合、Web UI では以下のようなエラーが表示されます。

今回は API アクセスしている場合のエラーをメモしておきます。 API アクセスには Python + virl2-client を用います。
以前に Linux の qcow2 イメージをカスタマイズする というメモを書きました。 このメモでは AlmaLinux 上で作業しています。 今回は Ubuntu 22.04LTS 上で同じ作業をする手順をメモしておきます。
Cisco IOS などではコンフィグを表示したい場合、show running-config などを利用します。 しかし、FortiGate では show コマンドを利用します。 このメモでは FortiGate でコンフィグを表示する方法を整理してメモしておきます。