On 12/14/2015 07:35 AM, ThereMichael wrote:
> I would say "from a Python function"  which could receive some context.
> 
> Here's why: The keys are stored in an external keystore, which is keyed
> off of a value in the row. Notionally, the table would look
> like this:
> 
> create table secure (external_keystore_key varchar(255), secure_value
> varchar(255));
> 
> When secure_value is gotten, or set, I would use external_keystore_key
> to talk to the external keystore, get the key, and decrypt or encrypt
> the value.

OK that's a Python function, plus some key in the table itself?

You could take the hybrid example and just refer to both columns in the
hybrid functions.   Or you might like to use a composite type which has
a lot of functional overlap with hybrids:
http://docs.sqlalchemy.org/en/rel_1_0/orm/composites.html?highlight=composite#mapper-composite



> 
> Thanks.
> 
> On Sunday, December 13, 2015 at 8:47:14 PM UTC-5, Michael Bayer wrote:
> 
> 
> 
>     On 12/13/2015 08:29 PM, Michael Wilson wrote:
>     > Hi,
>     >
>     > I read with great interest these examples:
>     >
>     >
>     
> https://bitbucket.org/zzzeek/sqlalchemy/wiki/UsageRecipes/SymmetricEncryption
>     
> <https://bitbucket.org/zzzeek/sqlalchemy/wiki/UsageRecipes/SymmetricEncryption>
> 
>     >
>     > Which use hybrid_property or TypeDecorators to implement encryption.
>     >
>     > My question is, now would you use these with a /varying/ key - one
>     that
>     > possibly changed per row (or primary key).
> 
>     well if you queried ten rows, where would you want to get those ten
>     keys
>     from ?   During the query, from the DB, a Python function, or after the
>     fact ?
> 
> 
> 
>     >
>     > Thanks for any ideas!
>     >
>     > --
>     > You received this message because you are subscribed to the Google
>     > Groups "sqlalchemy" group.
>     > To unsubscribe from this group and stop receiving emails from it,
>     send
>     > an email to sqlalchemy+...@googlegroups.com <javascript:>
>     > <mailto:sqlalchemy+unsubscr...@googlegroups.com <javascript:>>.
>     > To post to this group, send email to sqlal...@googlegroups.com
>     <javascript:>
>     > <mailto:sqlal...@googlegroups.com <javascript:>>.
>     > Visit this group at https://groups.google.com/group/sqlalchemy
>     <https://groups.google.com/group/sqlalchemy>.
>     > For more options, visit https://groups.google.com/d/optout
>     <https://groups.google.com/d/optout>.
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sqlalchemy+unsubscr...@googlegroups.com
> <mailto:sqlalchemy+unsubscr...@googlegroups.com>.
> To post to this group, send email to sqlalchemy@googlegroups.com
> <mailto:sqlalchemy@googlegroups.com>.
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to