drushコマンドラインを介してユーザーを管理者として設定しますか?


11

Drushを使用してユーザーを特定のロールに設定するにはどうすればよいですか?私の場合、ユーザーに管理者の役割を与えたいと思います。

回答:


15
drush help user-add-role
Add a role to the specified user accounts.

Examples:
 drush user-add-role "power user" 5,user3  Add the "power user" role to the accounts with name, id, or email 5 or user3, uids 2 
 --uid=2,3 --name=someguy,somegal          and 3, names someguy and somegal, and email address of billgates@microsoft.com       
 --mail=billgates@microsoft.com

Arguments:
 role                                      The name of the role to add                                                
 users                                     (optional) A comma delimited list of uids, user names, or email addresses.

Options:
 --mail=<me@example.com>                   A comma delimited list of user mail addresses of users to operate on. 
 --name=<foo>                              A comma delimited list of user names of users to operate on.          
 --uid=<3,5>                               A comma delimited list of uids of users to operate on.

Aliases: urol

したがって、あなたのユースケースでは:

drush user-add-role administrator USERNAME


簡単すぎる!= P ...少なくとも今はSQLでそれを行う方法を知っています... lol
Patoshiパトシ

@duckxですが、それはバックスクラッチャーを使用してフロントをスクラッチするようなものです
Patrick Ryan

0

最初に、次のようにユーザーテーブルでユーザーのID(UID)を取得する必要があります。

drush sqlq 'select * from users \Gamma'

私が欲しかった私のuidは uid = 444

次に、次のようにして、そのユーザーに割り当てたいロールIDを取得します。

drush sqlq 'select * from role'

管理者の役割はrid = 3

これでuidとridができたので、次のようにします。

drush sqlq 'insert into users_roles (uid, rid) values (444, 3);'

1
絶対にしないでください!データベースを操作する習慣をつけないでください。適切なAPIを使用した場合に呼び出されるフックをスキップすると、最終的に何かがひどく壊れてしまいます。この答えは削除すべきだと思います。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.