一般的な考慮事項
RulesおよびHooksをActionsに移行する
廃止された拡張ランタイムを使用している場合は、(Node 18)Actionsに移行する機会として、RulesおよびHooksの実装を確認することをお勧めします。Actionsの制限を確認して、Actionsに移行できるRulesおよびHooksを判断してください。RulesおよびHooksをActionsに移行する方法については、「Actionsへの移行」をご覧ください。Marketplaceの統合
ソーシャル接続の統合
Nodeランタイムバージョンの変更が影響を与える可能性があるソーシャル接続の全リストを確認するには、Management APIを使用します。特に、カスタムソーシャル接続として明示的に作成されたものか、Marketplaceを通して最初に追加されたものかを問わず、影響を受ける可能性があるソーシャル接続はすべて、oauth1かoauth2のいずれかの値のstrategy属性を持ちます。
GET接続エンドポイントを使用して、ある特定のテナント内での既存のカスタムソーシャル接続すべてをページネーションできます。たとえば、以下のクエリオプションは、最大100のカスタムソーシャル接続の名前と識別子を返します。
移行タスク
新しいカスタムActionsを作成する
Auth0 Dashboardを通してNode 18で新しいカスタムActionsを作成するには、- [Auth0 Dashboard]>[Actions(アクション)]>[Library(ライブラリー)]に移動します。
- [Create Action(Actionを作成)]>[Build from scratch(初めから構築する)] の順に選択します。
- [Runtime*(ランタイム)] フィールドで、Node 18 (Recommended)(Node 18(推奨)) を選択します。
- Node 18にカスタムActionsを記述し、テストして、準備が完了したらデプロイします。
既存のカスタムActionsをアップグレード
Node 12または16で構築された既存のカスタムActionsをNode 18に個々にアップグレードでき、また古いランタイムを使用して前のバージョンに戻すことができます。ActionsをNode 18にアップグレードするには、必要な変更を加えて、ランタイムでNode 18が使用されるように設定して、既存の実装の新しいバージョンを作成してデプロイします。他の拡張製品のためにNode 18を選択する
残りの(Actions以外の)拡張オファリングに使用されるランタイムは、テナントの詳細設定レベルでグローバルに定義されます。この設定を変更すると、同時に以下の機能性に影響を及ぼします。- ルール
- フック
- カスタムデータベースのスクリプト
- カスタムソーシャル接続のスクリプト
- [Dashboard]>[Settings(設定)]>[Advanced(詳細設定)] に移動します。
- [Extensibility(拡張)] セクションにスクロールします。
- [Runtime(ランタイム)] で、Node 18 を選択します。
npmモジュールを使用することをサポートしています。Node 16ランタイムから、弊社は、以下のモジュールのこの種類の使用法に対するサポートを終了しました。
既知の破壊的変更
マジックnpmモジュール
まだNode 12で実行している拡張がある場合、コードをNode 18に直接アップデートする時には、上記を考慮してください。モジュールを使用する前に、明示的に要求されていることを必ず確認してください。- _
- async
- Auth0
- azure_storage
- bcrypt
- crypto
- couchbase
- cql
- ip
- Knex
- mongo
- mysql
- mysql_pool
- ObjectID
- pbkdf2
- pg
- postgres
- Pubnub
- q
- querystring
- sqlserver
- uuid
- xml2js
- xmldom
- xpath
- xtend
Can I Requireモジュールバージョンの削除
次のカスタムソーシャル接続(Indeed、monday.com、Snapchat、およびTumblr)のユーザープロファイルの取得スクリプトは、Marketplaceで利用可能で、
0.22.0バージョンのaxiosモジュールを使用していましたが、Node 18では利用できません。これらの接続のいずれかを使用する場合は、必要に応じてManagement APIを通じてそのスクリプトを確認し、更新してください。| モジュール | バージョン |
|---|---|
| @analytics/google-analytics | 0.4.0 |
| @auth0/hapi | 13.5.1, 13.6.0 |
| @auth0/rule-utilities | 0.1.0 |
| @gitbeaker/node | 17.0.1 |
| @incognia/api | 1.0.0 |
| @octokit/rest | 15.8.2 |
| @sentry/node | 5.6.2, 5.15.5, 6.2.0 |
| acorn | 1.2.2 |
| airbrake | 1.0.2 |
| airgram | 3.1.1 |
| ajv | 6.10.1 |
| amazon-dax-client | 1.2.2 |
| amazon-mws-node | 1.0.3 |
| analytics | 0.5.1 |
| analytics-node | 2.0.1, 3.5.0 |
| applicationinsights | 0.15.8, 0.18.0, 1.5.0, 1.8.8 |
| async | 1.0.0, 0.9.0, 2.1.2, 2.6.1 |
| auth0 | 2.4.0, 2.1.0, 2.0.0, 0.8.2, 2.6.0, 2.7.0, 2.8.0, 2.9.1, 2.13.0, 2.17.0, 2.17.1, 2.19.0, 2.23.0, 2.27.0, 2.27.1, 2.30.0, 2.31.0, 2.32.0, 2.34.2, 2.35.0, 2.36.1, 2.36.2, 2.39.0, 3.0.1 |
| auth0-authz-rules-api | 4.0.0 |
| auth0-ext-template-renderers | 0.4.2 |
| auth0-extension-express-tools | 1.0.2, 1.1.5, 1.1.6, 2.0.0 |
| auth0-extension-hapi-tools | 1.0.0, 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.3.0 |
| auth0-extension-tools | 1.0.0, 1.2.1, 1.3.1, 1.3.2, 1.4.0 |
| auth0-magic | 3.1.0 |
| auth0-oauth2-express | 0.0.1, 0.0.3, 1.1.5 |
| auth0-source-control-extension-tools | 3.0.10, 3.0.9, 3.1.4, 3.4.0, 3.5.1, 4.0.3, 4.0.5, 4.0.6, 4.0.7, 4.1.1, 4.1.2, 4.1.3, 4.1.5, 4.1.7, 4.1.9 |
| aws-sdk | 2.2.30, 2.1.31, 2.1.13, 2.4.13, 2.5.3, 2.197.0, 2.291.0, 2.458.0, 2.593.0 |
| axios | 0.15.2, 0.18.0, 0.19.2, 0.21.1, 0.21.3, 0.22.0, 0.27.2 |
| azure | 0.10.6 |
| azure-storage | 0.4.4, 0.4.1, 0.9.0 |
| babel | 5.4.7, 5.1.9 |
| bcrypt | 4.0.0 |
| bluebird | 2.9.26, 3.4.6 |
| body-parser | 1.12.4 |
| boom | 2.7.2 |
| botbuilder | 0.9.0 |
| bson | 0.3.2, 4.4.0 |
| cookie-parser | 1.3.5 |
| datadog-metrics | 0.8.2, 0.9.0, 0.9.2, 0.9.3 |
| disposable-email-domains | 1.0.14, 1.0.15, 1.0.56 |
| dockerode | 2.1.4, 2.0.3 |
| dotenv | 0.4.0, 2.0.0 |
| easy-pbkdf2 | 0.0.2 |
| ejs | 2.3.1 |
| engine.io-client | 1.5.1 |
| express | 4.12.4, 4.14.0, 4.16.3 |
| express-jwt | 3.1.0, 5.1.0 |
| faunadb | 2.11.1, 4.1.1 |
| filter-object | 2.1.0 |
| firebase | 7.12.0 |
| firebase-admin | 4.0.4, 5.0.0, 6.0.0, 8.0.0, 8.12.1 |
| form-data | 0.2.0 |
| getstream | 3.4.1 |
| gitlab | 1.7.0 |
| google-auth-library | 1.0.0 |
| google-libphonenumber | 2.0.7, 3.2.8, 3.2.10 |
| googleapis | 2.1.6, 34.0.0 |
| got | 3.2.0, 9.2.1, 10.7.0, 11.3.0, 11.5.2 |
| hapi | 13.5.0 |
| hapi-auth-jwt2 | 7.0.1 |
| hapi-swagger | 7.4.0 |
| hoek | 2.14.0 |
| http-proxy | 1.11.1 |
| ibm_db | 2.6.4 |
| ip | 0.3.2, 0.0.1 |
| ipaddr.js | 1.0.1 |
| joi | 6.10.1 |
| jose | 3.19.0 |
| jsforce | 1.6.0 |
| jsonwebtoken | 5.7.0, 5.0.1, 5.0.0, 7.1.9, 8.5.0 |
| jwks-rsa | 1.0.0, 1.1.1, 1.6.0 |
| ldapjs | 1.0.0 |
| lodash | 3.10.1, 3.9.3, 2.4.1, 4.8.2, 4.17.10, 4.17.19 |
| lru-cache | 2.6.4 |
| mixpanel | 0.4.0 |
| mkdirp | 0.5.1 |
| moment | 2.10.3, 2.11.2 |
| mongodb | 2.0.48, 2.0.33, 2.0.27, 2.2.11, 3.1.4, 4.1.0, 3.6.10, 3.5.11 |
| mongoose | 4.1.6 |
| morgan | 1.5.3 |
| mysql | 2.7.0, 2.6.2, 2.0.0-alpha8, 2.15.0 |
| mysql2 | 1.5.3 |
| nano | 6.2.0 |
| neo4j-driver | 1.7.1 |
| node-fetch | 2.6.0 |
| node-jose | 0.9.2 |
| node-rdkafka | 2.10.1 |
| nodemailer | 2.5.0 |
| nsp | 2.4.0 |
| oauth | 0.9.12 |
| passport-wsfed-saml2 | 2.11.4 |
| pg | 4.5.7, 4.3.0, 4.1.1, 6.1.2, 7.17.1 |
| postmark | 1.3.1 |
| q | 1.0.1 |
| qs | 3.1.0 |
| ramda | 0.18.0, 0.23.0 |
| range_check | 0.0.1 |
| raw-body | 2.1.0 |
| react | 15.3.2 |
| redis | 0.12.1 |
| request | 2.56.0, 2.55.0, 2.27.0, 2.67.0, 2.73.0, 2.75.0, 2.81.0, 2.83.0, 2.88.0 |
| rethinkdb | 2.1.1, 2.0.0-1, 2.0.0 |
| rollbar | 0.6.2, 2.12.2 |
| semver | 4.3.4 |
| sendgrid | 1.8.0, 3.0.7 |
| sequelize | 3.1.1 |
| soap | 0.23.0 |
| socket.io | 1.3.5 |
| socket.io-client | 1.3.5 |
| splunk-bunyan-logger | 0.9.1 |
| ssh2 | 0.4.13 |
| stamplay | 1.0.6, 1.0.5, 1.0.3 |
| stripe | 3.3.4, 4.14.0, 4.24.0, 7.1.0, 7.4.0, 8.52.0 |
| sumo-logger | 1.5.5 |
| superagent | 1.2.0, 3.8.3, 4.1.0 |
| tedious | 6.6.2, 1.11.0, 0.1.4, 8.3.1, 9.2.1 |
| tough-cookie | 1.2.0 |
| twilio | 2.2.1, 3.6.0, 3.57.0 |
| twit | 1.1.20 |
| uuid | 2.0.3, 2.0.1, 3.1.0, 3.3.2, 7.0.3, 8.0.0 |
| vso-node-api | 3.1.1 |
| watson-developer-cloud | 2.0.1 |
| winston | 1.0.0, 0.8.1, 3.1.0 |
| xml2js | 0.4.8, 0.2.8 |
| xmlbuilder | 2.6.4 |
| xmldom | 0.1.19, 0.1.13 |
| xpath | 0.0.5 |
| xtend | 1.0.3 |
| モジュール | バージョン |
|---|---|
| @analytics/google-analytics | 0.4.0 |
| @auth0/hapi | 13.5.1, 13.6.0 |
| @auth0/rule-utilities | 0.1.0 |
| @gitbeaker/node | 17.0.1 |
| @incognia/api | 1.0.0 |
| @octokit/rest | 15.8.2 |
| @sentry/node | 5.6.2, 5.15.5, 6.2.0 |
| acorn | 1.2.2 |
| airbrake | 1.0.2 |
| airgram | 3.1.1 |
| ajv | 6.10.1 |
| amazon-dax-client | 1.2.2 |
| amazon-mws-node | 1.0.3 |
| analytics | 0.5.1 |
| analytics-node | 2.0.1, 3.5.0 |
| applicationinsights | 0.15.8, 0.18.0, 1.5.0, 1.8.8 |
| async | 1.0.0, 0.9.0, 2.1.2, 2.6.1 |
| auth0 | 2.4.0, 2.1.0, 2.0.0, 0.8.2, 2.6.0, 2.7.0, 2.8.0, 2.9.1, 2.13.0, 2.17.0, 2.17.1, 2.19.0, 2.23.0, 2.27.0, 2.27.1, 2.30.0, 2.31.0, 2.32.0, 2.34.2, 2.35.0, 2.36.1, 2.36.2, 2.39.0, 3.0.1 |
| auth0-authz-rules-api | 4.0.0 |
| auth0-ext-template-renderers | 0.4.2 |
| auth0-extension-express-tools | 1.0.2, 1.1.5, 1.1.6, 2.0.0 |
| auth0-extension-hapi-tools | 1.0.0, 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.3.0 |
| auth0-extension-tools | 1.0.0, 1.2.1, 1.3.1, 1.3.2, 1.4.0 |
| auth0-magic | 3.1.0 |
| auth0-oauth2-express | 0.0.1, 0.0.3, 1.1.5 |
| auth0-source-control-extension-tools | 3.0.10, 3.0.9, 3.1.4, 3.4.0, 3.5.1, 4.0.3, 4.0.5, 4.0.6, 4.0.7, 4.1.1, 4.1.2, 4.1.3, 4.1.5, 4.1.7, 4.1.9 |
| aws-sdk | 2.2.30, 2.1.31, 2.1.13, 2.4.13, 2.5.3, 2.197.0, 2.291.0, 2.458.0, 2.593.0 |
| axios | 0.15.2, 0.18.0, 0.19.2, 0.21.1, 0.21.3, 0.22.0, 0.27.2 |
| azure | 0.10.6 |
| azure-storage | 0.4.4, 0.4.1, 0.9.0 |
| babel | 5.4.7, 5.1.9 |
| bcrypt | 4.0.0 |
| bluebird | 2.9.26, 3.4.6 |
| body-parser | 1.12.4 |
| boom | 2.7.2 |
| botbuilder | 0.9.0 |
| bson | 0.3.2, 4.4.0 |
| cookie-parser | 1.3.5 |
| datadog-metrics | 0.8.2, 0.9.0, 0.9.2, 0.9.3 |
| disposable-email-domains | 1.0.14, 1.0.15, 1.0.56 |
| dockerode | 2.1.4, 2.0.3 |
| dotenv | 0.4.0, 2.0.0 |
| easy-pbkdf2 | 0.0.2 |
| ejs | 2.3.1 |
| engine.io-client | 1.5.1 |
| express | 4.12.4, 4.14.0, 4.16.3 |
| express-jwt | 3.1.0, 5.1.0 |
| faunadb | 2.11.1, 4.1.1 |
| filter-object | 2.1.0 |
| firebase | 7.12.0 |
| firebase-admin | 4.0.4, 5.0.0, 6.0.0, 8.0.0, 8.12.1 |
| form-data | 0.2.0 |
| getstream | 3.4.1 |
| gitlab | 1.7.0 |
| google-auth-library | 1.0.0 |
| google-libphonenumber | 2.0.7, 3.2.8, 3.2.10 |
| googleapis | 2.1.6, 34.0.0 |
| got | 3.2.0, 9.2.1, 10.7.0, 11.3.0, 11.5.2 |
| hapi | 13.5.0 |
| hapi-auth-jwt2 | 7.0.1 |
| hapi-swagger | 7.4.0 |
| hoek | 2.14.0 |
| http-proxy | 1.11.1 |
| ibm_db | 2.6.4 |
| ip | 0.3.2, 0.0.1 |
| ipaddr.js | 1.0.1 |
| joi | 6.10.1 |
| jose | 3.19.0 |
| jsforce | 1.6.0 |
| jsonwebtoken | 5.7.0, 5.0.1, 5.0.0, 7.1.9, 8.5.0 |
| jwks-rsa | 1.0.0, 1.1.1, 1.6.0 |
| ldapjs | 1.0.0 |
| lodash | 3.10.1, 3.9.3, 2.4.1, 4.8.2, 4.17.10, 4.17.19 |
| lru-cache | 2.6.4 |
| mixpanel | 0.4.0 |
| mkdirp | 0.5.1 |
| moment | 2.10.3, 2.11.2 |
| mongodb | 2.0.48, 2.0.33, 2.0.27, 2.2.11, 3.1.4, 4.1.0, 3.6.10, 3.5.11 |
| mongoose | 4.1.6 |
| morgan | 1.5.3 |
| mysql | 2.7.0, 2.6.2, 2.0.0-alpha8, 2.15.0 |
| mysql2 | 1.5.3 |
| nano | 6.2.0 |
| neo4j-driver | 1.7.1 |
| node-fetch | 2.6.0 |
| node-jose | 0.9.2 |
| node-rdkafka | 2.10.1 |
| nodemailer | 2.5.0 |
| nsp | 2.4.0 |
| oauth | 0.9.12 |
| passport-wsfed-saml2 | 2.11.4 |
| pg | 4.5.7, 4.3.0, 4.1.1, 6.1.2, 7.17.1 |
| postmark | 1.3.1 |
| q | 1.0.1 |
| qs | 3.1.0 |
| ramda | 0.18.0, 0.23.0 |
| range_check | 0.0.1 |
| raw-body | 2.1.0 |
| react | 15.3.2 |
| redis | 0.12.1 |
| request | 2.56.0, 2.55.0, 2.27.0, 2.67.0, 2.73.0, 2.75.0, 2.81.0, 2.83.0, 2.88.0 |
| rethinkdb | 2.1.1, 2.0.0-1, 2.0.0 |
| rollbar | 0.6.2, 2.12.2 |
| semver | 4.3.4 |
| sendgrid | 1.8.0, 3.0.7 |
| sequelize | 3.1.1 |
| soap | 0.23.0 |
| socket.io | 1.3.5 |
| socket.io-client | 1.3.5 |
| splunk-bunyan-logger | 0.9.1 |
| ssh2 | 0.4.13 |
| stamplay | 1.0.6, 1.0.5, 1.0.3 |
| stripe | 3.3.4, 4.14.0, 4.24.0, 7.1.0, 7.4.0, 8.52.0 |
| sumo-logger | 1.5.5 |
| superagent | 1.2.0, 3.8.3, 4.1.0 |
| tedious | 6.6.2, 1.11.0, 0.1.4, 8.3.1, 9.2.1 |
| tough-cookie | 1.2.0 |
| twilio | 2.2.1, 3.6.0, 3.57.0 |
| twit | 1.1.20 |
| uuid | 2.0.3, 2.0.1, 3.1.0, 3.3.2, 7.0.3, 8.0.0 |
| vso-node-api | 3.1.1 |
| watson-developer-cloud | 2.0.1 |
| winston | 1.0.0, 0.8.1, 3.1.0 |
| xml2js | 0.4.8, 0.2.8 |
| xmlbuilder | 2.6.4 |
| xmldom | 0.1.19, 0.1.13 |
| xpath | 0.0.5 |
| xtend | 1.0.3 |
TLS接続にデフォルトで必要となる安全な再ネゴシエーション
拡張コードが外部ネットワーク呼び出しを行う場合、ターゲットサーバーは安全な再ネゴシエーションをサポートしていなければならず、そうでなければ要求は失敗し、以下のようなエラーを受け取ります。axiosライブラリーについては、以下のコードスニペットが、旧来の動作にオプトインする方法を示しています。