HalcyonGrid / halcyon

Halcyon 3d virtual reality world simulator
BSD 3-Clause "New" or "Revised" License
20 stars 20 forks source link

new feature request issue, the need of Godmode #104

Closed Ana-Green closed 3 years ago

Ana-Green commented 4 years ago

Permissions

Vinhold told Dad Grid God or God Mode levels that would be an illusion. Grid god mode allows certain staff members to take and control permissions over objects. Setting Grid God Mode allows you to control individual users by editing their access level in the Website staff member Panel. Any staff member with a level > 100 will be a grid god. You can set any estate owner or estate manager to be a grid god, too. staff members can become Gods by using the Request Admin Level button in the Advanced Viewer menu. God mode is a useful function. However, making copies of items that are no copy or no transfer and giving them to others is illegal. Please remember that copyright laws for your country need to be respected. Besides staff members can not change themselves to have the status to use the viewer and is allowed to switch to God, for that there is a Staff member the Staff administrator who has control over that section, a staff member is defined by what they do in the staff.

Allow Gods: God mode is available to selected people if enabled. These levels can be set for individual users in the Web control panel. • Level = 0 is a normal user • Level = 50 (or a level you set) is used to indicate a privileged user.

Level = 100 is a Website admin account user • Level >= 200 can become a God Region Owner is God: If enabled, the region owner may go into God mode. Region Manager is God: If enabled, any region estate manager may go into God mode.

Note: To just insert in the table Godmode 250 is not the purpose, as shown above, in fact changing manual Godmode level in the Database will leave it at that level, you have no control to change it quickly to 0 mainly using the Viewer ad briefly explained above.

To deal swiftly and quickly with Griefers you must have level 250 or 200 thew maintenance staff or service staff in some cases. If Devs think that all the above is not needed in Halcton I rest my case.

Note: To just insert in the table Godmode 250 is not only the purpose but unchangeable in the viewer, as a result, it will remain 250 whatever you do unless you log into the server center and edit the Database where you set it to 0 sound to me like overkill and not like Vinhold said an illusion.

Off-topic from Godmode settings I have to stress out that in Halcyon's case level 250 course somehow forces the person who has level 250 to Z = 2. See teleport issue (Connected to 250)

Regards, Ana Green

Ana-Green commented 4 years ago

In a blink, I saw a message from Vinhold on dad's computer "how it is implemented in Halcyon. It should be removed from Halcyon as an outdated process that has better tools to use." "how its implemented in Halcyon" It is not implemented in Halcyon rather disabled, Halcyon was/is based on the Open Sim code, Open Sim had God Like implemented, Vinhold calls it an outdated process, yes opinions are free but one can think a bit logical.

Regards, Ana Green

kf6kjg commented 4 years ago

Below I clarify the purpose of the table and the viewer setting as I currently understand it.

  1. The database field is supposed to specify what the agent is: AKA a level over 200 in the database simply mean that the agent is an Administrator. While the mere existence of this value does change some behaviors as we are discussing in #96 such as teleport destination, it shouldn't allow the agent to, without additional effort, unilaterally take ownership of another agent's objects. Such permissions need to be regulated much more closely as humans can make mistakes.

  2. The viewer's request to elevate privileges is a request to that specific region to temporarily grant to the agent those extra permissions, such as the ability to unilaterally take ownership of another agent's objects. What permissions are granted, if any, is regulated by the value in the database: aka if the database has a value of 100 then your request grants level 100's permissions, if 250 then 250's permissions are granted. This entire feature is, AFAIK, currently removed from Halcyon: the cap is removed or somesuch - probably because it was very buggy and IW at the time didn't need or use it.

Vinhold commented 4 years ago

I said "That z=2 is an illusion." in reference to the Z=2 being an error in location. Since then the meaning of Z=2 is "Whatever the land height is on arrival" is where you are placed, has been found out.

As far as the Administrator Tools are concerned my statement was: "I oppose any automatic changes to god mode status in Halcyon. It is not needed and was intentionally not supported. Any grant of the god mode status is to be provided for by assignment to any account which the grid owner deems is to need it, not by automatic request by any users. The god-mode privilege is a world owner grant, not a user right."

There are currently Nine Halcyon worlds in operation, Four are in business use. Three are not in active operation. Two are test worlds including Frank and Ana's Dreamcastle world.

I posted this survey to the operating world owners and their responses:


I am contacting because a significant Dev issue for Halcyon is up and I need to have world owner response to turn in to them. Issue - Relevance of the Administration god-mode in Halcyon: Do you have the god-mode allowed in your world? If Yes,

Do you think the god-mode should still be retained in Halcyon?

Note: in Halcyon most of the typical god-mode features have been disabled and do not work. What there is still working can be handled with better tools and options in other places. So the old Administration god-modes are now very much outdated and need to be proven if they are really still needed at all.

Asked operating Halcyon world owners: Shadow, Kween, Ashember, myself. Responses: Do you have the god-mode allowed in your world? Shadow: No Kween: No Ashember: No Vinhold: No

Do you think the god-mode should still be retained in Halcyon? Shadow: No Kween: Some may need it. Ashember: Not if there are other better tools to use. Vinhold: No


We need to know what the Administration Tools - in Halcyon that are still working - allow and then determine what other tools we have that provides a better way to handle the situations. That will help a lot to determine if the Administration Tools are even still needed in Halcyon at all or what alternate options may be needed elsewhere to handle any selective cases.

Ana-Green commented 4 years ago

Well like I wrote in the teleport issue I will just copy it here 👍

@kf6kjg @CaseyraeStarfinder @Vinhold

Teleport MAP bug! #96 takes to much time for me and a not needed debate, I stay to the point that level 250 has an effect on the LP and maybe so correct, Where 0 will act like a normal teleport as for every user. To swift change from 250 to 0 or from 0 to 250 has been done by the viewer, the advanced options and Admin requests are not outdated, not everybody can use this swift switching only Grid Owners and their staff this to solve fast a griefer attack or other security issues. Maybe Halcyon needs only the Admn mode and not all that SL has to date, not out-dated! As region ower you can NOT remove fire, boxes flying around people that get griefed here is where 250 comes in as then you can disable, delete, remove these objects and others, but sure if you like that Halcyon has this security leak it's not my call but consider this a grid owner what can not disable, delete, remove these objects, etc may affect Region Owners from helping the people on the compromised region because there is no Grid Owner with these powers as they are not implemented in Halcyon even worse taken out or seen as Vinhold said outdated, Vinhold is not objective, he dislikes Open Sim and even SL if they use Godmode levels in the admin range if they were outdated and not in use why has every new viewer release still build in the Advanced section and Admin section to manipulate and override permissions just to remove, delete, etc unwanted objects. And even more, where Copy Bot viewers get ejected at Grid Level Code in the config files is something to think about too. Please see what you do I am not even a Dev and tired, came just home from work. And old Administration god-modes are now very much outdated is NOT true, it's still and will be in use for something you overlook, you have your own way of thinking about things, that is fine but I do not agree with you nor does Oscar Linden I spoke to. You want a secure and stable structure in Halcyon then start thinking harder about what you said, yes I know you have your own mindset, these Admin rules are placed for a long time and they are not outdated as they are still in place look at advanced, I know you don't have to ... I am done!

Regards, Ana Green

Ana-Green commented 4 years ago

@kf6kjg @CaseyraeStarfinder @Vinhold

First of all with all due respect @Vinhold but Dad has nothing to do with this, I am an adult woman so please do not tell him that he has to use Open Sim, you do not agree with me Dad has nothing to do with what I try to propose, in this case, to leave at least Admin & God Mode activated in Halcyon and even better use it together with the viewer like this: Updates to Objects | |Ctrl-Alt-V|Advanced > View Admin Options|Develop > Show Admin Menu (no shortcut)| |Ctrl-Alt-G|Advanced > Request Admin Status|Develop > Request Admin Status | |Ctrl-Alt-Shift-G|Advanced > Leave Admin Status|Develop > Leave (Last viewer 2020 FS),

Ctrl-Alt-V|Advanced will activate the Advanced menu, View Admin Options, Ctrl-Alt-G|Advanced > Request Admin Status then Request Admin Status will activate God Mode = 100 or > 100 default 250, The level 250 will then be inserted in the DB under the Table Godmode. Develop > Request Admin Status, |Ctrl-Alt-Shift-G, |Advanced > Leave Admin Status will Deactivate God Mode = 0 or < 1 default 0. So it seems that Viewer creators do not think that the God Mode level is outdated or obsolete but still needed in Second Life and Open Sim if you don't like Open Sim then just skip it but do read Second Life. The main reason why this is in place is security in case of a Griefer attack and they can be nasty. If you don't have this in place you can not or real difficult remove turning objects, flames, avatars fly through the air or even worse the Griefer will crash the region. If that would not be the case the Developers would not implement the option in a brand new viewer as in case of a Griefers attack you do not have the time to edit the DB swift speed to stop a griefer is key and other options not mentioned here.

Regards, Ana Green

mdickson commented 4 years ago

Just my 2 cents. I'm inclined to agree with Ana (at the risk of putting words in her mouth) that Halcyon not implementing the GodMode controls in the viewer is a defect. Albeit potentially a low priority one. It can be very useful in both OpenSim and SL though probably of limited use for most people. While its nice that Vin's tools do a fair bit of administration (my python tools, Maestro also did but never got deployed) I think supporting the admin controls in the viewer directly is desirable and doesn't force you to use a specific administration tool on the back end.

emperorstarfinder commented 4 years ago

I am reminded of what my parents taught me and it applies here, "You can get more out of honey then you can with vinegar". Attacking and being critical of others who have opinions is not going to get your issue fixed or a requested feature considered any faster. A good community respects the views and opinions of everyone even if they disagree, they still treat each other with respect and civility. So let us keep that in mind. I would also encourage people to use their own ids when reporting issues or communicating through a project's community locations such as discord, mewe, etc. then you will avoid confusion with who is who when trying to help people trying to figure out issues they might be having.

First to the question of why do TPV viewers have the admin tools built-in if they are out of date in Secondlife? Well if you read the TPV policies that Linden Labs set out you would know that the Third Party Viewers must ensure they keep in line with what Linden Labs requires (whether right or wrong) in order for that TPV to connect to Secondlife. Likewise, most TPVs also support OpenSimulator and many of its forks and derivatives and because the TPV devs often have to keep up with changes on multiple grid architectures (i.e. Secondlife, OpenSimulator, etc.) they do not always have the time, team members, or other resources to review everything so some things that probably shouldn't be in the viewer end up getting left in the viewer at some point. So whether the admin tools remain in the viewer or not, really is not something that the HalcyonGrid project has control over. If Linden Labs chooses to keep the admin tools in the viewer, then you should factor in that the TPVs will as well. Therefore, I am not so sure that whether the tools are in the viewer or not is relevant to Halcyon more than the question of does the project owner of HalcyonGrid wants to keep that functionality or not in the core code of Halcyon.

As region ower you can NOT remove fire, boxes flying around people that get griefed here is where 250 comes in

You are incorrect, I own and manage regions in Secondlife and I can absolutely return these kinds of objects and even deal with scripts as a region owner or estate manager without needing to be in the god level tools. Even parcel owners can do this. I can even do so on my grid as just simply the region or parcel owner without even being on my staff id. In this case its more about knowing how to use the parcel and region management tools and other tools outside of the admin tools. Now there are times when an object or script might not register on a parcel or in a region but still be there, this has happened before even in Secondlife in which case you would probably need admin level tools if you can't find it. But I have found in my many years of experience in virtual worlds that these kinds of objects or scripts are a rarety.

Are there things that the admin tools can do that you cant in parcel or region management or otherwise? sure there are, and that's the way it is intended to be on purpose. You don't want everyone just having access to those tools or you could end up with people doing so much damage to your grid that you will fail.

I stay to the point that level 250 has an effect on the LP and maybe so correct

The whole reason why the god level accounts can land anywhere on a region regardless of parcel landing point settings is to avoid potential traps and other security risks that could otherwise compromise a grid admin account and ultimately a grid.

Now is the Halcyon admin tools out of date? They in fact probably are out of date. When Vinhold says that he probably is correct, Now does that mean that they should or will be removed? maybe and maybe not. As far as I am aware there has been no decision made on that so at the moment what Vinhold said there was his opinion. In fact, at the time Halcyon was forked away from OpenSim (at version 0.6.5 which was dated May 25, 2009, as evidenced by the AssemblyInfo.cs files in the OpenSim directory of Halcyon), the permissions tools and the god tools were in fact pretty buggy and did not work the way they should have. To the credit of the InWorldz developers, they did make great strides in fixing these issues and in some ways made plenty of improvements. But as years drag on there can always be updates and changes to make things even better. Especially when the changes are needed because of changes in how viewers handle things. And this can be a very daunting task to keep up for projects of all sizes at times which is why being patient is always the better policy in the open-source world.

Copy Bot viewers get ejected at Grid Level Code in the config files is something to think about too.

Now, this is always a good idea. However, this might have the ability to be accomplished via the website admin tools that Vinhold is working on. The downside to this is some copy bot viewers do have the ability to circumvent that by spoofing the grid services into believing they are a viewer that in fact, they aren't. However, from a security standpoint, this is something that should be looked at if this ability is not already in Halcyon.

Regardless of whether people agree or disagree, this at least is a legitimate conversation to have.

Vinhold commented 4 years ago

Private conversations discussed elsewhere do not have any place here in discussing what may or may not be supported in Halcyon. My comment posted above still remains: "We need to know what the Administration Tools - in Halcyon that are still working - allow and then determine what other tools we have that provides a better way to handle the situations. That will help a lot to determine if the Administration Tools are even still needed in Halcyon at all or what alternate options may be needed elsewhere to handle any selective cases." This is a call for a listing of the Administration options that still work in Halcyon and compare that with what powers the Grid Owner (Master Avatar) has in Halcyon and what same powers apply to the land owner and how the group abilities assigned to roles also replaces any of the Administration tools.

I spent at least 5 years in Second Life as a Sandbox guardian of one of the largest sandboxes in SL at the time: Skybeam Estates. I learned the correct ways to deal with griefers that occasionally came there to cause as much trouble as they could get away with. I could return objects, banish from the estate, and any other options needed to maintain a good location for creators to do their work. I learned a lot from the top builders in SL at the time who came to that sandbox to work on their creations. I did all I could to encourage and teach building and scripting to new comers also. Never once did I have any tools more than what the group abilities were granted. Nothing more was ever needed.

I do recall that it was a long time before OpenSim had implemented the group concepts and abilities. The last version of OpenSim I had used before I got InWorldz simulator (before it was released and called Halcyon some three years later,) I no longer needed to use OpenSim. I do not dislike OpenSim software, I simply do not have any need to use it. So please, keep my opinions in perspective. I am not at war with OpenSim. I do not need to use it. :) If another simulator shows up that is much better than Halcyon and Halcyon cannot be updated anymore I will be happy to migrate to whatever that may be. But for now, Halcyon is the best for what I need to use.

For this discussion the call is to have a review of what the Administration tools have that are still operational in Halcyon, and compare those with what the Grid Owner has built in and which also apply to a Land owner and the group abilities when applied to land management.

As far as I know there is no way to detect or block any copybot viewers. They are just normal viewers on connection and can spoof whatever legit viewer they want. It just has the ability to save all content provided to the viewer as accessible content that can then be reloaded into any world the users wants. It does not have the ability to access anything that is only on the server like scripts.

Ana-Green commented 4 years ago

no comment at this time but will soon

Ana Green

mdickson commented 4 years ago

Doesn't make sense IMO to conflate what started as a simple request to make Admin/God mode from the viewer work as expected into something about administration at large. The simple truth is that being able to enter admin status if you're a grid owner (or grid admin if that is delegated) in order to diagnose issues with prim rezzing, etc from the viewer can be helpful. Also reclaim ownership of abandoned land. All of this is doable in the context of a region/session because the viewer has mechanisms for it (which are implemented in all the TPV's) and the region supports the calls.

Whatever additional admin capabilities are provided are really an entirely separate issue. As I said. IW had it's tool set and Maestro was developed alongside it. Vin has one as well. There is support for remote admin calls and so on. But none of that replaces the fact that having admin mode support from the viewer is a desirable feature request.

I would suggest we stop trying to mash all the admin "things" into one bucket and simply address this as a feature request that started focusing on Admin mode from the client/viewer.

Ana-Green commented 4 years ago

Now that is a low spirit of thinking to say "I would suggest we stop trying to mash all the admin "things" into one bucket and simply address this as a feature request that started focusing on Admin mode from the client/viewer." all God mode levels are implemented in all TPV's for a purpose and they keep doing this, look at the newest viewers they all have it implemented anf it ain't for fun, as I said it is for a purpos and in use, I have not much time today but the purpose was "NOT to" take all God mode levels over only the 250 one, so that we can use the Viewer to switch fast from 0 to 250 and being Grid God, after all the one who uses it is the Grid Owner he or / she owns that particular Grid and has or most have the right to swift jump in Grid God Mode as soon he/she sees fit for it if you don't like that that is a personal issue not how it has neen done for years and still it is in use, yes SL uses more God Modes we need only 1, on = 250 or off 0 what part do you not understand? You leave that one God Mode in Halcyon furthermore make also sure that it works right with the Viewer that is all, I am not asking to use all Grid Mode level to be used or implemented.

Regards, Ana Green

mdickson commented 4 years ago

Ok, well whatever. I think its clearer with feature requests to stay focus. And I do agree that having God/Admin mode working in Halcyon makes sense.

Ana-Green commented 4 years ago

@mdickson I think the same thank you.

Regards, Ana Green

Vinhold commented 4 years ago

My apologies, apparently the topic for this issue and my lack of precise terminology has created some confusion of meaning. By "Administration Tools" I intended to reference the in FireStorm Developer menu entry, "Request Admin Status" to enable the "god-mode" options, is what I have been talking about.

This discussion is about the relevance and determination of actual need for these "Admin Status" options. Not about external grid management tools like Maestro, Zookeeper, or my Grid Manager which does nothing more than make it easy to manage what servers the regions are assigned to for running and control of them.

The intent of the "Admin Status" was to provide a way to assign world management controls to Linden staff based on a grant value assigned to their accounts. In the OpenSim version from which Halcyon was forked, this was called in the users table god-mode. A list of values posted a couple of times by Ana has what the values are and what they mean in terms of ability granted to the account.

My intent in this discussion is to list each of those granted options and show how and where they are already applied in a world, and by discussion here, determine exactly what continued relevance the "Admin Status" options are for Halcyon worlds, where over time and better concepts have been implemented by Linden Labs in land management - the "Admin Status" is apparently only still relevant to OpenSim operation. Viewers still maintain the option only because they have not been removed by Linden Labs in their viewers as yet. And the intent of this discussion is to determine which of the options have been removed / not supported in Halcyon currently and which may still work. Then see if those options still need to apply or not as far as Halcyon operation is concerned.

We might just discover that there may still be some need to have some features, and define exactly how they should be used and applied. Then, with that information, I can add to the MyWorld website Administration some additional programming to provide the world owner the ability to grant the appropriate permissions to their staff to be able to use. OR the entire system be updated to a better managed permissions set. IF and ONLY IF we have some level of viewer support for it or maybe some improved direction from Linden Labs.

Currently only Frank and Ana's Dreamcastle world, of all the worlds I have set up using Halcyon, has the "Admin Status" enabled. No one else needs or allows the status to be used in their worlds. The reason is that the options they provide already are part of the Grid Owner account operation, or has scope to the Land Owner to use, or can be applied to Group owned lands with Group Role Abilities. I would like to know more accurately what do we really need for Halcyon operation.

Ana-Green commented 4 years ago

This discussion started with Admin level assigned to the Grid Owner again the Owner of the Grid using Firestorm's "Administration Tools" what you activate by |Ctrl-Alt-V|Advanced > View Admin Options|Develop > Show Admin Menu (no shortcut)| |Ctrl-Alt-G|Advanced > Request Admin Status|Develop > Request Admin Status | |Ctrl-Alt-Shift-G|Advanced > Leave Admin Status|Develop > in case of being a Grid Owner you have also the status to perform what I wrote above thus it will activate Admin (God mode) with a User Level from 250 or 200 mainly 250 this needs to be inserted in to the Database from the Grid Owner Table [ God Mode ] [ Leave Admin Status ] will change the User Level back from 250 to 0 what makes the Gird Owner a normal User, using a viewer like FS and otherViewers as it is still in use and not like Vin said outdated, in fact it is a great tool it works together with Halcyon like with SL and OS only SL uses more User Levels for seperated functions but that is beyond the scope of this proposal. @Vinhold You said the "Admin Status" is apparently only still relevant to OpenSim operation. that is complete False the difference (see it like this) that the Lindens are the Grid Owners and in need, they log in and will use the viewer to activate God Mode the same as I wrote above if you don't believe me call Linden Labs or the Firestorm Team. then you said "Currently only Frank and Ana's Dreamcastle world, of all the worlds I have set up using Halcyon, has the "Admin Status" enabled." DreamCastle is not my Grid Vin, it's from Dad. Again wong every Halcyon Grid Owner can edit the DB and change level 0 to 250 and they are God as Grid Owner, in normal cases, you do that with the Administration Tools" as it is intended using a TPV in this case FireStorm. Not to mention that the Developers from FireStorm mention OpenSim, not Halcyon and the SL Viewer only they do not need to mention any other Grid. Remember SL is only one Grid, not multiple Grids so a Linden will be Grid Owner for SL on the opposite Halcyon has Multiple Grids and thus Multiple Grid Owners, you even let other Grid Owners vote to implement the above "Administration Tools" into Halcyon so that they work together with the Viewer as it always was and still is intended to work that way, and again Second Life has a wide level, not only Level 250, I wonder or the people who did vote even know this?
Then the God Mode levels are not new features they were always there and still implemented into Viewers but only for Second Life and OpenSim, sorry Vin no Halcyon mentioned, basically Halcyon uses the Grid Manager from OpenSim but disabled the Grid God function what is only intended for Second Life and/or OpenSim my proposal is simple and clear to also re-enable or enable it also for Halcyon!

Regards, Ana Green

Ana-Green commented 4 years ago

Well, to be honest, I had it whatever you build in Halcyon or whatever you taking out you do that anyway, So or you implement what I wrote it's not up to me, be safe

Regards, Ana Green

mdickson commented 4 years ago

Honestly there is no one doing real active development. Just look at the commits against the repo. Various people would probably like to think they speak for the project but its pretty much dormant.

Ana-Green commented 4 years ago

Well maybe I was to fast in this case my excuses, I just wait it out, I did re-open it again and hope we will look at it logically.

Regards, Ana Green

Ana-Green commented 4 years ago

Admin powers / GodMode in Lame terms. And the problem with the client and Halcyon! I spoke with somebody from Linden just to be sure, 1) nobody outside the Lindens team and also not all have Admin power (refer to God Mode Activation) 2)) these few people from that team are like we call it Grid Owners or Admins for the SLi Grid. 3) Since the SL Grid is so huge they have more Grid Owners or admins that can activate God Mode. 4) This is used in situations where a region owner can not fix a certain problem. 5) they have multiple Gid Power options that are outside this issue and the multiple Halcyon Grids we have are not as huge as the Grid from SL. 6) If an Admin or Gridowner has the God Power not enabled he or she can do equal much as a normal user 7) Once Admin (Godmode activated) they can do all that we refer to the level 250 mode. 8) In 250 any teleport will end up at x.y.2 and will ignore the teleport route like LP, 9) addition I also asked as Vin suggested to go into the DataBase, I got as answer "you could/can do that on a small grid but it defeats the purpose Viewer Admin activation, we can not go in server 499 and 212 to edit the database in our Linden Labs Computer Center, it is the purpose to do this from the viewer not manual, to do this for 3000 servers would be insane" that is what he in short said. That explains that somehow Halcyon keeps the user with 250 set in the Database at 250 regardless or you try to switch back to normal user-level "Leave Admin Mode" and therein you have the problem once Z has set in the DataBase to 250 it remains 250 that needs to be fixed so if the command from the client switches to normal Database Godemode level becomes 0 otherwise if Admin powers client wise requested it will switch to 250 any idea that someone can manipulate that is a paranoid idea if someone once to break in like a "REAL" hacker they will break into the heart of the system aka the server.

Best Regards, Ana Green

appurist commented 3 years ago

Can someone, fairly precisely, describe which GodMode features are supposedly not implemented in Halycon?

I have regularly used this on Halcyon regions. It works. So the title of this report is a bit off, at the very least.

You need to have your user record's godLevel field set to 200 or more in the database, but requesting god mode and taking ownership of objects, or taking a copy of someone else's object does work. Is there some specific feature that remains unimplemented?

appurist commented 3 years ago

Regarding fighting griefers, godmode is not nearly as good a tool as the nuke and blacklist console commands, and godmode is really just a shortcut to the tools available to region owners, to delete or return objects. Grant these Halcyon console commands are not well documented, as they were added in an emergency rush during a major griefer attack, but they are available and very thorough: nuke ownerUUID or nuke all (wipes the region) or the more permanent and ongoing: blacklist user userUUID blacklist object owner ownerUUID blacklist object creator creatorUUID blacklist remove UUID blacklist clear (all) blacklist show These commands clean up griefers and prevent future abuse. Furthermore, the viewer/user-level 'Freeze' operation can be granted to any land group member (you don't even need to be an estate manager) and it stops ALL operations for that user except logoff and the ability to chat in IM with the person who froze them. And it lasts until logoff, unlike the 30-second duration in SL.

emperorstarfinder commented 3 years ago

We determined that the God Mode does in fact work correctly in terms of this issue.

However, my team further reviewed this with the help of our viewer devs and discovered that LL has the God Levels (i.e. 100 through 250) backwards which appears to have been translated in libOpenMetaverse (OpenSim version) and ultimately passed on to all the open-source forks and offshoots of OpenSim (Halycon included because of the inheritance from early days).

From what we are able to tell from the viewer source code the god levels Linden Labs had defined are:

100 = God Liason (appears to be correct, and is where system-level accounts i.e. Governor Linden reside) 150 = Customer Service (appears to be correct, The level you would assign to support staff such as CSR,s and Mentors depending on the world owner's rules) 200 = Full God (Appears to be incorrect and should be level 250, Full God is a good level for core or lead developers potentially depending on the rules the world owner sets) 250 = God Maintenance (Appears to be incorrect and should be level 200, God Maintenance Level is good for assistant developers i.e. Grid Monkeys who help with maintenance).

There however does not appear to be any difference in the abilities each god-level can override. The use of God Mode should only be necessary for grid staff when doing debugging or when dealing with objects and scripts causing issues such as unnecessary lagging or otherwise griefing that a parcel owner or region/ estate owner cannot take care of in their respective user flag levels.

God Mode does override the teleport flags and for good reason. It is a design LL had in order to protect god-level accounts (i.e. grid staff and developers) from getting griefed upon landing or otherwise becoming vulnerable to the actual issue they are attempting to deal with. Therefore God Mode allows them to override the Teleport Landing flags and land anywhere on a region or parcel. However, the only issue noted there was falling through objects when there was a hole in the terrain. This is just due to raytracing or positioning in relation to the land. However, It is not considered a breaking issue for the purposes of the intended use of God Mode.

kf6kjg commented 3 years ago

Looks like I stand corrected. Probably a faulty memory circuit in my head. I just did a casual review of both the commit history and the current codebase and it looks like @appurist and @emperorstarfinder are correct: assuming a user has the correct "godmode" status in the database, the user can elevate to that status via the viewer "god mode" request system for the region they are in.

appurist commented 3 years ago

@emperorstarfinder Thanks for that detailed summary. The 200/250 may explain why the code checks for level 200 but historically IW used 250 in the DB.

I think this means we can close this issue as "working as intended".

There are some possible differences with the way Halcyon handles incoming teleports, e.g. the way it uses a landing point if specified, only if coming from outside the parcel (thus allowing a second teleport to go anywhere). That is intentional but specifics of that might need a review/discussion. I'd suggest a separate issue regarding landing points if anyone thinks the current behavior should change now in light of these updates to this one.

Ana-Green commented 3 years ago

@emperorstarfinder Good evening,

I agree about The use of God Mode should only be necessary for grid staff or Grid Owner, the different levels are needed for a complete staff, like they use it at Second Life. And no @kf6kjg it is not working maybe it is working as you think it should work that is another story, but that is not my problem.

Best Regards, Ana Green

emperorstarfinder commented 3 years ago

@appurist Yes, we use 200 for our Assistant Core Developers, and 250 for Core Developers on A Galaxy Beyond, but I imagine most world owners probably are just using straight 250. As far as the landing points, they appear to be working as intended other than when there is a hole in the terrain under objects which will cause users in the elevated God Mode to fall through objects covering those holes in the terrain. God Mode would in fact override any set landing points as well, so I would say that piece is working normally. In fact, the InWorldz functionality and Secondlife Functionality of landing points are pretty similar so I really don't see much difference there in my testing. But I am definitely happy to have that conversation about potentially reworking the landing point logic for the elevated God Mode down the road.

kf6kjg commented 3 years ago

@Ana-Green In your original post it seemed to me that you were asking for the ability to have a restricted set of users able to click the button in the viewer to gain "god mode" and then be able to perform some permissions-bypassing activities on a region - such as taking ownership of objects and other actions. This feature already exists and is working as per the notes from the gentlemen above.

If your request is about some additional feature you want added to the set of actions a user who gains "god mode" on a region can perform, please clarify.

appurist commented 3 years ago

@emperorstarfinder Since there is no distinction in the code between level 200 and level 250, I'm assuming this is done at A Galaxy Beyond for use outside the Halcyon software itself, such as through the web interface, or any admin tool that allows you to add or remove assistant devs (200) but not core devs (250)? Something like that? Or perhaps it's just so that you can group them more easily? (I think the division of user class is clear here, but I don't think there's anything you can do in Halcyon with level 250 that is not also available to level 200, so the purpose of doing so is less clear.)

emperorstarfinder commented 3 years ago

@appurist A Galaxy Beyond doesn't run on the Halcyon platform, we run on our own proprietary platform. We do have additional tools in place that requiring the user classification for the God-Level, but I gave it here as an example because the base God Mode tools are the same whether it's in OpenSim, Halcyon, WhiteCore-Sim, our proprietary platform, etc.

If the team is smaller you could get away with as follows:

Our testing showed there was really no difference at all between level 200 and level 250 that was visually or discernably different that we were able to say with sound justification made the two levels different. Ideally, most of the tools that are in the God Tools really can be used at the region/ estate level or some even at the parcel level so to the casual eye would seem redundant. However, God Tools allows for overriding the permissions system and teleportation for obvious reasons of debugging and protecting accounts in an activated god-level from vulnerabilities when they teleport to a location on the grid.

Because most of the world owners using Halcyon currently don't have the God Mode enabled on their worlds, I really see no need for this to be an immediate issue that without it being revisited would be a show stopper. Once the viewer devs on my team finish their documentation of what's going on in the viewers, I will have a better idea of what each god tool is actually doing at which point we will have a more informed means of deciding how best to refactor these tools more.

appurist commented 3 years ago

Okay I think I follow most of that. And no question in my mind, god abilities are absolute critical in the operation of a grid, at least for a small number staff accounts. I don't think it's necessary or advisable for developers though, unless they cannot run their own copy of the server software locally. But that is a policy determined by the grid management, not the software.

I guess my question is more not a "who would each of these be" but rather "how would the server code behave differently?" Which viewer operations (if any) would be available to someone with a godlevel less than 200 that wouldn't be available to level 0? Which god operations would not be available to a user with only 200? For 100, why would a shared account need to have a non-zero god level? (What does that grant?)

I think all world owners using Halcyon would enable gods; I am not aware of any that do not. It's just that on these worlds, ideally there would only be a small number on each grid, namely founders and perhaps top technical support staff. I believe there were 3 founders and a total of 5 godlevel accounts in InWorldz (counting the 3 founders), separate from daily-use accounts. For example, I had a Jim Tarber non-god account, and a Jim InWorldz god account, because I was the top technical person (once Tranq abandoned it). So I don't see the point of a level 150 account for support staff; is there something on your grid that this enables in the region/grid software? Or is it all for organization and identification in the associated management software?

I guess I don't yet see what Halcyon would do differently. Perhaps change some of the current level 200 tests to something lower?

appurist commented 3 years ago

As this is a closed issue, I think the @kf6kjg suggestion to open a more specific request for change, that outlined specific suggestions for godlevel changes, would be needed to follow up any further. Something like: there should be a godlevel below 200 that only allows deleting of any object from a region. Or Take A Copy. Or something specific for a specific level.

Halcyon supports a specific set of operations and overrides for these based on godlevel. At the very least, a suggestion for change here seems to need a specific operation, with a specific level at which to allow it. (This could also be a new operation not currently checked for godlevel.) For "external" use of godlevel by management tools, it already supports a huge range of levels by virtue of its use of an integer value.

I'm also not sure Lindens got it wrong. Since level 200 allows all god operations, "Full God" seems like an appropriate term. It could be that a Maintenance god supports even more, akin to root or a SuperUser, such as the ability to add/change/delete god accounts (which would be outside the Halcyon software, so Full God would refer to region powers).

Yichard commented 3 years ago

Indeed the "god" must protect himself from mistakes, so it makes sense to have several levels depending on what we want to do

Ana-Green commented 3 years ago

@Ana-Green In your original post it seemed to me that you were asking for the ability to have a restricted set of users able to click the button in the viewer to gain "god mode" and then be able to perform some permissions-bypassing activities on a region - such as taking ownership of objects and other actions. This feature already exists and is working as per the notes from the gentlemen above.

If your request is about some additional feature you want added to the set of actions a user who gains "god mode" on a region can perform, please clarify.

@kf6kjg Note:: God mode is only for either the Grid Owner or a staff that has certain levels same as they use it on Second Life the Lindens I presume not just users and yes the Grid Owner should be able to activate level 250 while the staff can use certain levels using the method click the button in the viewer to gain "god mode", frankly it is Developer then Admin or all functions in the Developer menu.

See: http://wiki.secondlife.com/wiki/God_Mode

Thank you, Ana Green

appurist commented 3 years ago

@Ana-Green Good, the current Halcyon server does support anyone authorized to enter or leave god mode, on demand, using the standard viewer operation for this.

Ana-Green commented 3 years ago

@appurist Paul the implementation "God Mode" is not for users nor for "Region Owners", "God Mode" is for the "Grid Owner" and his/her team for nobody else, if an unauthorized user attempts to enable "God Mode" via Ctrl-Alt-G, or the Develop > Request Admin Status menu option, a dialog is displayed informing the user that "Request for special powers failed. This request has been logged.". So Halcyon should have this implementation correctly done, that means level wise and if somebody is trying to activate "God Mode" a log function what tells the "Grid Owner" or "Grid Owner team" who tried to enable God Mode on any level from/in that team see http://wiki.secondlife.com/wiki/God_Mode.

Thank you, Ana Green

appurist commented 3 years ago

@Ana-Green Agreed, and that is what the current implementation provides. I think their may be some misunderstanding here. Specifically, what part of what you described does Halcyon not do? Are you referring specifically to that (viewer) message that comes out when it is denied? Or you mean the fact that it is not logged? (I don't think it is logged.) Or is there something else you believe Halcyon is not doing?

This is what @kf6kjg was asking about earlier, since Halcyon does implement godmode, on-demand when requested from the viewer, only for users authorized by the grid, we'll need a more specific request than one to implement god mode (that part was done a decade ago and was heavily used by staff at InWorldz).

appurist commented 3 years ago

@Ana-Green Is the change you are looking for in Halcyon that it would follow the godlevel values and operations in that document more exactly? For example, that godlevel 1 would allow changes to no-mod objects?