--- title: "Custom User Validationの有効化" url: https://docs.catalyst.zoho.com/ja/tutorials/birthday-greetings/nodejs/enable-custom-logic/ description: "Job Schedulingサービスを使用して誕生日グリーティングアプリケーションを構築し、指定した相手にメールで自動的に誕生日の挨拶を送信します。" last_updated: 2026-08-17T12:16:04Z service: All Services type: tutorial related_links: - name: "認証" url: /ja/cloud-scale/help/authentication/introduction/ - name: "認証SDK" url: /ja/sdk/nodejs/v2/cloud-scale/authentication/get-component-instance/ - name: "ホワイトリスト" url: /ja/cloud-scale/help/authentication/whitelisting/introduction/ - name: "カスタムユーザー検証" url: /ja/cloud-scale/help/authentication/whitelisting/custom-user-validation/introduction/ --- # Custom User Validationの有効化 ### カスタム認証ロジックのコーディング ここでは、エンドユーザーがアプリケーションに登録する際に適用するカスタムロジックをコーディングします。 [ファンクションディレクトリ](https://docs.catalyst.zoho.com/ja/cli/v1/project-directory-structure/functions-directory/) `BirthdayGreetings/functions/basic_function/`には以下が含まれます: * `index.js`メインファンクションファイル * `catalyst-config.json`設定ファイル * Nodeモジュール * [`package.json`](https://docs.npmjs.com/files/package.json)および[`package-lock.json`](https://docs.npmjs.com/configuring-npm/package-lock-json.html)依存関係ファイル。 `index.js`ファイルにコードを追加します。 このファンクションには以下の機能が含まれます: * エンドユーザーの詳細がJSON入力としてCustom User Validationファンクションに渡されます。 * このファンクションは、エンドユーザーの認証または拒否を行うカスタムロジックを実装するようコーディングされています。 > **Note:** このチュートリアルでは、Custom User Validationファンクションの例として、ユーザーのメールプロバイダーがZylker Technology(`@zylker.com`)以外の場合、エンドユーザーはアプリケーションにサインアップできないというロジックをコーディングしています。同じロジックを使用するか、お好みのロジックをコーディングしてください。 以下のコードをコピーして、プロジェクトの`BirthdayGreetings/functions/basic_function`ディレクトリにある`index.js`ファイルに貼り付け、ファイルを保存してください。 アプリケーションのファイル操作には、任意のIDEを使用できます。 > **Note:** このセクションのコードを十分に理解するために、必ず目を通してください。 **index.js** ```javascript const catalyst = require('zcatalyst-sdk-node') module.exports = (context, basicIO) => { const catalystApp = catalyst.initialize(context) const requestDetails = catalystApp.userManagement().getSignupValidationRequest(basicIO) if (requestDetails) { if (requestDetails.user_details.email_id.includes('@zylker.com')) { basicIO.write(JSON.stringify({ status: 'success', user_details: { first_name: requestDetails.user_details.first_name, last_name: requestDetails.user_details.last_name, email_id: requestDetails.user_details.email_id, role_identifier: 'App User', org_id: '' } })) } else { // ユーザーの認証に失敗しました basicIO.write(JSON.stringify({ status: 'failure' })) } } context.close() } ``` > **Notes:** * `6`行目のドメイン名を、要件に合ったものに変更してください。 * 上記の実装の代わりに、この[SDK](https://docs.catalyst.zoho.com/ja/sdk/nodejs/v2/cloud-scale/authentication/custom-user-validation/)を使用して独自のカスタムロジックをコーディングすることもできます。 ### ファンクションのデプロイとCustom User Validationの設定 このカスタムロジックを適用するには、コンソールでCustom User Validationオプションを有効にするために、このファンクションをコンソールにデプロイする必要があります。 ファンクションをデプロイするには、以下のCLIコマンドを実行して[ファンクションコンポーネントのみをコンソールにデプロイ](https://docs.catalyst.zoho.com/ja/cli/v1/deploy-resources/deploy-options/#--only-lttargetsgt)します。 ```sh catalyst deploy --only functions ``` > **Info:** 代わりに、以下のコマンドを使用してCustom User Validationファンクションのみをデプロイすることもできます: `catalyst deploy --only functions:function_name` ![catalyst_tutorials_jobscheduling_deploy_only_func](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_deploy_only_func.webp) すべてのファンクションに対してファンクションエンドポイントが作成されます。これにより、ファンクションに直接アクセスできるようになります。 ファンクションがコンソールにデプロイされます。コンソールのServerlessセクション内のFunctionsコンポーネントからアクセスできます。 ![catalyst_tutorials_jobscheduling_serverless_func_view](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_serverless_func_view.webp) > **Note:** プロジェクトのすべてのファンクションをコンソールにデプロイしましたが、**Advanced I/O**および**Job functions**のコーディング後に再度デプロイを行います。 次に、コンソールの*Cloud Scale*セクション内の**Authentication**コンポーネントに移動し、以下の手順を実行します: 1. *Authentication*コンポーネントの**Whitelisting**セクションに移動し、**Custom User Validation**のトグルをクリックします。 ![catalyst_tutorials_jobscheduling_authentication_csu_start](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_start.webp) 2. ポップアップのドロップダウンから**Basic I/O**ファンクションを選択します。 ![catalyst_tutorials_jobscheduling_authentication_csu_func_sel](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_func_sel.webp) 3. **Configure**をクリックします。 ![catalyst_tutorials_jobscheduling_authentication_csu_cmpltd](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_authentication_csu_cmpltd.webp) Custom User Validationファンクションがプロジェクトで有効になり、アプリケーションにサインアップするエンドユーザーはこのファンクションを使用して追加の認証が行われるようになります。 > **Note:** Whitelistingセクションに存在するすべての機能については、この[ヘルプドキュメント](https://docs.catalyst.zoho.com/ja/cloud-scale/help/authentication/whitelisting/introduction/)をご覧ください。