Nette Documentation Preview

syntax
アクセス権限の設定
*********

.[perex]
Nette Security の設定オプションの概要。

フレームワーク全体ではなく、このライブラリのみを使用する場合は、[設定の読み込み方法|bootstrap:] をお読みください。

設定でユーザーのリストを定義し、それによって [単純な認証器|authentication] (`Nette\Security\SimpleAuthenticator`) を作成できます。設定ではパスワードが読み取り可能な形式で指定されるため、このソリューションはテスト目的のみに適しています。

```neon
security:
	# Tracy Bar にユーザーパネルを表示しますか?
	debugger: ...  # (bool) デフォルトは true

	users:
		# 名前: パスワード
		frantisek: tajneheslo

		# 名前、パスワード、ロール、およびアイデンティティで利用可能なその他のデータ
		dobrota:
			password: tajneheslo
			roles: [admin]
			data: ...
```

さらに、ロールとリソースを定義し、それによって [認可者|authorization] (`Nette\Security\Permission`) の基礎を作成できます。

```neon
security:
	roles:
		guest:
		registered: [guest]  # registered は guest から継承します
		admin: [registered]  # そして admin はそれから継承します

	resources:
		article:
		comment: [article]   # リソースは article から継承します
		poll:
```


ストレージ
-----

ログインしたユーザーに関する情報をどのように保存するかを設定できます。

```neon
security:
	authentication:
		# 非アクティブ状態がどのくらいの期間続いた後、ユーザーはログアウトされますか
		expiration: 30 minutes        # (string) デフォルトは設定されていません

		# ログインしたユーザーに関する情報をどこに保存しますか
		storage: session              # (session|cookie) デフォルトは session
```

ストレージとして `cookie` を選択した場合、さらに次のオプションを設定できます。

```neon
security:
	authentication:
		# cookie 名
		cookieName: userId            # (string) デフォルトは userid

		# cookie を受け入れるドメイン
		cookieDomain: 'example.com'   # (string|domain)

		# 別のドメインからのアクセス時の制限
		cookieSamesite: None          # (Strict|Lax|None) デフォルトは Lax
```


DI サービス
-------

これらのサービスは DI コンテナに追加されます。

| 名前           | 型                        | 説明
|----------------------------------------------------------
| `security.authenticator`  |  [api:Nette\Security\Authenticator]  |  [認証器|authentication]
| `security.authorizator`   |  [api:Nette\Security\Authorizator]  |  [認可者|authorization]
| `security.passwords`      |  [api:Nette\Security\Passwords]  |  [パスワードハッシュ化|passwords]
| `security.user`           |  [api:Nette\Security\User]  |  現在のユーザー
| `security.userStorage`    |  [api:Nette\Security\UserStorage]  |  [#ストレージ]

アクセス権限の設定

Nette Security の設定オプションの概要。

フレームワーク全体ではなく、このライブラリのみを使用する場合は、設定の読み込み方法 をお読みください。

設定でユーザーのリストを定義し、それによって 単純な認証器 (Nette\Security\SimpleAuthenticator) を作成できます。設定ではパスワードが読み取り可能な形式で指定されるため、このソリューションはテスト目的のみに適しています。

security:
	# Tracy Bar にユーザーパネルを表示しますか?
	debugger: ...  # (bool) デフォルトは true

	users:
		# 名前: パスワード
		frantisek: tajneheslo

		# 名前、パスワード、ロール、およびアイデンティティで利用可能なその他のデータ
		dobrota:
			password: tajneheslo
			roles: [admin]
			data: ...

さらに、ロールとリソースを定義し、それによって 認可者 (Nette\Security\Permission) の基礎を作成できます。

security:
	roles:
		guest:
		registered: [guest]  # registered は guest から継承します
		admin: [registered]  # そして admin はそれから継承します

	resources:
		article:
		comment: [article]   # リソースは article から継承します
		poll:

ストレージ

ログインしたユーザーに関する情報をどのように保存するかを設定できます。

security:
	authentication:
		# 非アクティブ状態がどのくらいの期間続いた後、ユーザーはログアウトされますか
		expiration: 30 minutes        # (string) デフォルトは設定されていません

		# ログインしたユーザーに関する情報をどこに保存しますか
		storage: session              # (session|cookie) デフォルトは session

ストレージとして cookie を選択した場合、さらに次のオプションを設定できます。

security:
	authentication:
		# cookie 名
		cookieName: userId            # (string) デフォルトは userid

		# cookie を受け入れるドメイン
		cookieDomain: 'example.com'   # (string|domain)

		# 別のドメインからのアクセス時の制限
		cookieSamesite: None          # (Strict|Lax|None) デフォルトは Lax

DI サービス

これらのサービスは DI コンテナに追加されます。

名前 説明
security.authenticator Nette\Security\Authenticator 認証器
security.authorizator Nette\Security\Authorizator 認可者
security.passwords Nette\Security\Passwords パスワードハッシュ化
security.user Nette\Security\User 現在のユーザー
security.userStorage Nette\Security\UserStorage ストレージ