過去に VS Code Forge Tools での 3-legged OAuth の記事で VS Code にインストールした Autodesk Platform Services (VSCode Extension) から 3-legged OAuth で Fusion Team や Autodesk Docs(Autodesk Construction Cloud)にアクセスする方法をご紹介しました。その後、Forge から Autodesk Platform Services(APS)への改名にともない、3-legged 認証フローで利用するコールバック URL も変更されているので、改めて、VS Code APS エクステンションでの 3-legged OAuth 運用する手順を記しておきたいと思います。
通常、VS Code 上で Autodesk Platform Services (VSCode Extension) を利用すると、2-legged OAuth で取得したアクセストークンが使用されます。この時、VS Code の画面左下のステータスバーには、それを示す文字が表示されます。
APS API を利用するアプリの登録とキーの取得 でアプリを作成する際に に http://localhost:8123/auth/callback 値を設定しておくと、3-legged OAuth を使った認証と認可のプロセスを VS Code でおこなうことが出来るようになります。
(VS Code の settings.json で使用する Client Id と Client Secret を持つアプリについて、あらかじめ、前述の Callback URL が設定されていれば、ステータスバーの APS Auth: 2-legged をマウス左ボタンでクリックすると、既定のブラウザが起動して 3-legged OAuth のプロセスがはじまります。
[Login] ボタンをクリックしてアクセス対象となる Fusion Team や Autodesk Docs(Autodesk Construction Cloud)などのストレージ データにアクセス出来る Autodesk ID でサインインすると、次の認可画面が表示されます。
[許可] ボタンで Autodesk Platform Services (VSCode Extension) のデータアクセスを認可(許可)すると、次の画面に遷移して 3-legged OAuth プロセスが完了したことが表示されます。
Web ブラウザの画面を閉じて VS Code に戻り、Hubs & Derivatives にアクセスすると、認可したユーザの権限に応じて、Hub >> Project と内容を表示していくことが出来るようになるはずです。
- Autodesk Docs(Autodesk Construction Cloud)のストレージ内容を表示させるには、ACC:新しいカスタム統合 UI でご案内している手順で、VS Code で使用している Client ID を「カスタム統合」しておく必要があります。
この際、ステータスバーには APS Auth: 3-legged と表示されているはずです。同時に、Hubs & Derivatives 下に表示されるプロジェクトは、APS Auth: 2-legged 時に表示されていた内容と異なっているはずです。
ステータスバーの APS Auth: 3-legged をマウス左ボタンでクリックすると、VS Code 上部に「Would you like to log out?(ログアウトしますか?)」と表示されるので、「Yes」を選択すると APS Auth: 2-legged の状態に戻ります。
なお、Autodesk Platform Services (VSCode Extension) が 3-legged OAuth で使用するポート番号の既定値は 8123 ですが、この値は Extension の設定から、必要に応じて変更することが可能です。
By Toshiaki Isezaki
コメント
コメントフィードを購読すればディスカッションを追いかけることができます。