関数の設定
次に、関数コンポーネントを設定して認証ポータルアプリケーションのコーディングを開始します。
関数のディレクトリ(functions/authorization_portal_function)には以下が含まれています:
- main.pyメイン関数ファイル
- catalyst-config.json設定ファイル
- ハンドラーファイル
- 追加する外部ライブラリを記述するrequirements.txtファイル
main.pyファイルにコードを追加します。
Basic I/O functionには以下の機能が含まれています:
- エンドユーザーの詳細がJSON入力としてCustom User Validation関数に提供されます。
- 関数は、エンドユーザーが認証されるか拒否されるかを決定するカスタムロジックを実装するようにコーディングされています。
Note: このチュートリアルでは、ユーザーのメールプロバイダーがZylker Technology(@zylker.com)以外の場合、エンドユーザーがアプリケーションにサインアップできないCustom User Validation関数のロジックをコーディングしています。同じロジックを使用するか、お好みのロジックをコーディングできます。
それでは、Basic I/O functionのコーディングを開始しましょう。
以下のコードをコピーして、プロジェクトのfunctions/authorization_portal_functionディレクトリにあるmain.pyファイルに貼り付け、ファイルを保存してください。任意のIDEを使用してアプリケーションのファイルを操作できます。
Note: このセクションのコードを確認して、完全に理解していることを確認してください。
main.py
copy
import json
import zcatalyst_sdk
def handler(context, basicio):
catalyst_app = zcatalyst_sdk.initialize()
auth_service = catalyst_app.authentication()
request_details = auth_service.get_signup_validation_request(basicio)
if request_details:
if "@zylker.com" in request_details["user_details"]["email_id"]:
basicio.write(json.dumps({"status": "failure"}))
//ユーザーは認証に失敗しました
else:
//認証成功時に発生するアクションはカスタマイズできます
basicio.write(
json.dumps(
{
"status": "success",
"user_details": {
"first_name": request_details["user_details"]["first_name"],
"last_name": request_details["user_details"]["last_name"],
"email_id": request_details["user_details"]["email_id"],
"role_identifier": "App User",
//デフォルトのロールを上書きする場合は、ここでロールID/名前を指定できます。
'org_id': "orgId"
//Org IDを指定する場合は、コンソールから正確にコピーしてください。
},
}
)
)
context.close()
Note: 上記で実装したロジックの代わりに、このSDKを使用して独自のカスタムロジックをコーディングすることもできます。
関数ディレクトリが設定されました。クライアントディレクトリの設定に進みましょう。
最終更新日 2026-03-05 11:43:24 +0530 IST