バグの説明
LDAPでインポートされたユーザー(Aactive Directoryから)は、スタック、サービス、コンテナー、ボリューム、またはネットワークを表示できません。 動作する唯一のセクションは画像です。 ユーザーには、アクセスの管理オプションを使用してエンドポイントへの直接アクセスが許可されます。 ユーザーに直接またはインポートされたLDAPグループを介してアクセスを許可することはできません。
予想される行動
インポートされたLDAPユーザーは、管理者がアクセスを許可したエンドポイントの一部であるすべてのリソースにアクセスできる必要があります。
問題を再現する手順:
動作を再現する手順:
技術的な詳細:
docker run -p 9000:9000 portainer/portainer
):docker stack deploy --compose-file = portainer-agent-stack.yml portainer(デプロイ手順のデフォルトのcomposerファイル)やあ、
管理者としてログインし、各ページ(スタック、サービス、コンテナー、ボリューム、ネットワーク、構成、シークレット)を確認する場合は、「所有権」列を確認してください。 「管理者」と表示されている場合、標準ユーザーはリソースを表示できません。
LDAPユーザーを管理者に昇格させる(Portainerでユーザーアカウントをクリックして管理者としてマークする)か、アクセス制御を「公開」に変更して、すべてのユーザーがリソースを表示できるようにすることができます。
これはバグではなく、実際にはPortainerアプリケーションの通常の動作です。
Portainerの外部で作成されたすべてのリソースは、管理者ユーザーのみに制限されます。これは、Portainerの内部でリソースを作成するときのデフォルトのポリシーでもあります。
LDAP / OAuth認証を使用する場合、新しく作成されたユーザーには作成時に通常のユーザーロールが割り当てられるため、管理者に制限されている既存のリソースにアクセスできなくなります。
Neilが述べたように、これらの各ユーザーに管理者の役割を割り当てる必要があります。
ユーザーがアプリで利用可能なデフォルトの所有権を変更できるようにするための進化リクエストがあります。
https://github.com/portainer/portainer/issues/685
また、高度な役割ベースのアクセス制御管理を導入する次の拡張機能から、より堅牢なアプローチを期待することもできます。
みんなありがとう! 最初は少し混乱しましたが、これですべてが説明できます。
最も参考になるコメント
これはバグではなく、実際にはPortainerアプリケーションの通常の動作です。
Portainerの外部で作成されたすべてのリソースは、管理者ユーザーのみに制限されます。これは、Portainerの内部でリソースを作成するときのデフォルトのポリシーでもあります。
LDAP / OAuth認証を使用する場合、新しく作成されたユーザーには作成時に通常のユーザーロールが割り当てられるため、管理者に制限されている既存のリソースにアクセスできなくなります。
Neilが述べたように、これらの各ユーザーに管理者の役割を割り当てる必要があります。
ユーザーがアプリで利用可能なデフォルトの所有権を変更できるようにするための進化リクエストがあります。
https://github.com/portainer/portainer/issues/685
また、高度な役割ベースのアクセス制御管理を導入する次の拡張機能から、より堅牢なアプローチを期待することもできます。