Skip to main content
以下に、Lock の動作を設定するためのさまざまなオプションを示します。さらに、Style Customization Options ページでは、Lock の外観やスタイルを変更するためのオプションも多数用意されています。

Lock の動作を設定する

設定オプションは、withOptions を使って Lock の初期化時に追加できます。

動作設定

closable

ユーザーがLockを閉じられるようにします。デフォルトでは false です。

scope

認証に使用するスコープです。デフォルトは openid です。返されるのは だけでなく、ユーザー情報を含む (JWT) である も含まれます。認証スコープの詳細については、Scopes のドキュメントを参照してください。

リフレッシュトークン

Lock オプションで offline_access スコープを指定すると、access_token と id_token に加えて リフレッシュトークン を受け取れるようになります。は保存しておき、古いアクセストークンの有効期限が切れたときに新しいアクセストークンを取得するために使用できます。Auth0 認証でリフレッシュトークンを使用する方法の詳細については、リフレッシュトークンの実装に使用する Auth0.Swift SDK のリファレンスドキュメント、または Swift 開発での Auth0 の使用例 (リフレッシュトークンの管理を含む) を包括的に紹介している Swift Quickstart ガイド を参照してください。

termsOfService

デフォルトでは、Lock は Auth0 の利用規約とプライバシーポリシーを使用しますが、別の URL を指定して、他の利用規約やポリシーにリンクすることもできます。

利用規約を表示

データベース接続では、利用規約ダイアログが表示されます。既定値は true です。なお、mustAcceptTerms フラグが有効な場合、利用規約は常に表示されます。

ユーザーに利用規約への同意を必須にする

データベース接続では、利用規約に明示的に同意する必要があります。

Web Authentication オプション

leeway

ID トークンのバリデーションで使用するクロックスキューです。サーバー時刻とクライアント時刻の差を考慮して、ID トークンが有効と見なされる時間の許容範囲を広げます。デフォルトは 60000 ミリ秒 (60 秒) です。

maxAge

ユーザーが最後に認証されてからの経過時間として許容される最大値 (ミリ秒) です。ID トークンのバリデーションに使用されます。設定すると、ID トークンには認証時刻を示す auth_time クレームが含まれます。デフォルトは nil です。

Database のオプション

allow

アクセス可能な Database の画面を指定します。既定では、.Login.Signup.ResetPassword など、すべての画面が有効です。

initialScreen

ユーザーに最初に表示される画面です。既定値は .Login で、その他のオプションには .SignupResetPassword があります。

usernameStyle

ログイン時に必要な識別子の種類を指定します。デフォルトは [.Username, .Email] ですが、[.Username] または [.Email] も指定できます。ただし、このオプションが有効になるのは、Auth0 Dashboardrequires_username フラグを true に設定している場合のみです。

カスタム Signup フィールド

Signup 時に既定で必要な情報は、ユーザーのメールアドレスとパスワードです。必要に応じて、収集する情報を増やすことができます。ここで追加の Signup フィールドを収集すると、それらは user_metadata に保存されます。詳しくは メタデータ をご覧ください。なお、カスタムのテキストフィールドで使用するアイコンは指定する必要があります。
以下の例のように、ほかのバンドルのアイコンを指定することもできます。 CustomTextField(name: “slack_handle”, placeholder: “Slack Handle”, icon: LazyImage(name: “ic_slack”, bundle: Bundle(identifier: “CustomBundle”)))

エンタープライズのオプション

エンタープライズ接続固有の設定オプションもあります:

enterpriseConnectionUsingActiveAuth

デフォルトでは、エンタープライズ接続は Web Authentication を使用します。ただし、代わりに資格情報を使った認証を使用し、ユーザー名とパスワードの入力を求める接続を指定することもできます。

activeDirectoryEmailAsUsername

クレデンシャル認証モードでは、ユーザーの識別子としてメールアドレスを必須にしますか?デフォルトは false で、その場合は代わりにユーザー名が必要です。

ログオプション

Lock では、ログ機能のオン/オフや、そのほかのログ関連設定を簡単に変更できます。

logLevel

既定では .off です。Syslog のログレベルをサポートしています。

logHttpRequest

Auth0.swift API リクエストをログに記録するかどうかを指定します。デフォルトでは false です。

loggerOutput

ロガーの出力ハンドラーを指定します。デフォルトでは print 文を使用します。
上記のコードでは、loggerOutput が CleanroomLogger を使用するように設定されています。通常は、loggerOutput プロトコルを実装することでこれを実現できます。もちろん、お好みのロガーライブラリを使用することもできます。以下は、CleanroomLogger で logger 出力を処理する使用例です。