﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Ayende Rahien commented on Authorization DSL</title><description>Bunter,
  
This is actually possible.
</description><link>http://ayende.com/3124/authorization-dsl#comment14</link><guid>http://ayende.com/3124/authorization-dsl#comment14</guid><pubDate>Fri, 01 Feb 2008 11:43:28 GMT</pubDate></item><item><title>Bunter commented on Authorization DSL</title><description>"if Not FormalDate.CurrentHour between 9 And 17:
  
Deny("Cannot log in outside of business hours, 09:00 - 17:00")"
  
  
I wish you could write even in more a bit of an "english":
  
if now.not.between 09:00 and 17:00
  
  
:)
</description><link>http://ayende.com/3124/authorization-dsl#comment13</link><guid>http://ayende.com/3124/authorization-dsl#comment13</guid><pubDate>Fri, 01 Feb 2008 08:59:12 GMT</pubDate></item><item><title>Ayende Rahien commented on Authorization DSL</title><description>Oh, good point.
  
I am thinking more about the more general approach, specifically with relation to Rhino Security, which uses that approach
</description><link>http://ayende.com/3124/authorization-dsl#comment12</link><guid>http://ayende.com/3124/authorization-dsl#comment12</guid><pubDate>Wed, 30 Jan 2008 21:47:45 GMT</pubDate></item><item><title>Avish commented on Authorization DSL</title><description>Oh, I didn't mean a structured string. I meant a structured identifier. No quotes. I used period as delimiter because Boo's syntax allows qualified names as reference expressions, which is good for this scenario. The delimiter itself isn't important, it's the difference between a string literal that "looks" like a structured identifier (but requires parsing) and a qualified name, which *is* a structured identifier.  
</description><link>http://ayende.com/3124/authorization-dsl#comment11</link><guid>http://ayende.com/3124/authorization-dsl#comment11</guid><pubDate>Wed, 30 Jan 2008 21:33:42 GMT</pubDate></item><item><title>Ayende Rahien commented on Authorization DSL</title><description>Avish,
  
Paths are my preferences, they are immediately recognizable.
  
I have no issues, however, with structured strings that uses other delimiters. "account.login" or "order.approve" are just fine.
  
I actually built a system with that convention, it worked nicely.
</description><link>http://ayende.com/3124/authorization-dsl#comment10</link><guid>http://ayende.com/3124/authorization-dsl#comment10</guid><pubDate>Wed, 30 Jan 2008 21:22:23 GMT</pubDate></item><item><title>Avish commented on Authorization DSL</title><description>Ayende, qualified names are also meaningful and intrinsically hierarchical without resorting to string parsing. I'm uncomfortable seeing "/account/login", but less so when I see account.login. 
</description><link>http://ayende.com/3124/authorization-dsl#comment9</link><guid>http://ayende.com/3124/authorization-dsl#comment9</guid><pubDate>Wed, 30 Jan 2008 21:19:31 GMT</pubDate></item><item><title>Ayende Rahien commented on Authorization DSL</title><description>This is actually possible with a patch to Boo :-)
  
  
Macro operators
</description><link>http://ayende.com/3124/authorization-dsl#comment8</link><guid>http://ayende.com/3124/authorization-dsl#comment8</guid><pubDate>Wed, 30 Jan 2008 19:34:20 GMT</pubDate></item><item><title>Benny commented on Authorization DSL</title><description>As this should be DSL I would like a approach like
  
  
if Not FormalDate.CurrentHour between 9 And 17:
  
Deny("Cannot log in outside of business hours, 09:00 - 17:00")
  
</description><link>http://ayende.com/3124/authorization-dsl#comment7</link><guid>http://ayende.com/3124/authorization-dsl#comment7</guid><pubDate>Wed, 30 Jan 2008 19:28:33 GMT</pubDate></item><item><title>Ayende Rahien commented on Authorization DSL</title><description>Avish,
  
Yes, that would be much nicer. But I am trying to show a simple DSL, not taking it to the far end.
  
  
How do you structure operations if they are free text?
  
There is a good reason that I like the path approach, they are very easily recognizable, have meaningful names and intrinsically hierarchical.
</description><link>http://ayende.com/3124/authorization-dsl#comment6</link><guid>http://ayende.com/3124/authorization-dsl#comment6</guid><pubDate>Wed, 30 Jan 2008 17:31:30 GMT</pubDate></item><item><title>Avish commented on Authorization DSL</title><description>I keep having trouble with the operations named like paths or URLs. This sounds logical only if you're developing a web app, and even then it's not always the correct mapping. I'd rather go wilder and do something like:
  
  
operation login in account 
  
  
Also, for a DSL I think I'd rather do something more like "if user in Managers" over "if Prinicpal.IsInRole("Managers")".  
</description><link>http://ayende.com/3124/authorization-dsl#comment5</link><guid>http://ayende.com/3124/authorization-dsl#comment5</guid><pubDate>Wed, 30 Jan 2008 17:11:13 GMT</pubDate></item><item><title>Bill Pierce commented on Authorization DSL</title><description>IIRC, ADAM/AzMan has a similar capability using VBScript to validate defined Operations, however it requires Active Directory.
</description><link>http://ayende.com/3124/authorization-dsl#comment4</link><guid>http://ayende.com/3124/authorization-dsl#comment4</guid><pubDate>Wed, 30 Jan 2008 15:13:45 GMT</pubDate></item><item><title>Nick Parker commented on Authorization DSL</title><description>This is probably a good example of why people are flocking to Ruby, writing a DSL for something like this becomes very easy.
</description><link>http://ayende.com/3124/authorization-dsl#comment3</link><guid>http://ayende.com/3124/authorization-dsl#comment3</guid><pubDate>Wed, 30 Jan 2008 11:01:33 GMT</pubDate></item><item><title>Ayende Rahien commented on Authorization DSL</title><description>Rik,
  
This _is_ normal code. In specific context, using a specific set of scenario.
  
This is supposed to be an example of a technical DSL.
  
What you see is the entire file, and you have whole sets of them.
</description><link>http://ayende.com/3124/authorization-dsl#comment2</link><guid>http://ayende.com/3124/authorization-dsl#comment2</guid><pubDate>Wed, 30 Jan 2008 09:28:31 GMT</pubDate></item><item><title>Rik Hemsley commented on Authorization DSL</title><description>This looks like normal code to me... apart from the context setting first line. What makes it a DSL?
  
</description><link>http://ayende.com/3124/authorization-dsl#comment1</link><guid>http://ayende.com/3124/authorization-dsl#comment1</guid><pubDate>Wed, 30 Jan 2008 09:23:25 GMT</pubDate></item></channel></rss>